为什么我无法在Method中访问数据?
我目前正在尝试通过如下方法填充TableLayoutPanel
:
private int _rowCount; public void InitPaths() { int c = 1; int a = 1; while (a < _PathRows.Length - 1) { var label = new Label(); // // Label - Format. // label.Dock = DockStyle.Fill; label.AutoSize = false; label.Text = _pfadZeilen[a]; label.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; label.Size = new System.Drawing.Size(22, 13); label.BackColor = System.Drawing.Color.Transparent; TableLayoutP.Controls.Add(label, 3, c); //Checkboxen Einfügen var cbox = new CheckBox(); // //Checkbox Format. cbox.Anchor = System.Windows.Forms.AnchorStyles.None; cbox.AutoSize = true; cbox.CheckAlign = System.Drawing.ContentAlignment.MiddleCenter; cbox.Name = "checkBoxPfad" + a; cbox.Size = new System.Drawing.Size(15, 14); cbox.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; cbox.UseVisualStyleBackColor = true; TableLayoutP.Controls.Add(cbox, 0, c); a++; c++; } this._rowCount = BibTable.GetRowHeights().Length; // which seems to be Holding the value only within the method }
然后通过以下方法删除Action上的所有行:
public void RemoveRows() { for (int row = _rowCount; row >= 0; row--) { BibTable.RowStyles.RemoveAt(row); BibTable.RowCount--; } }
现在的问题是,如果我尝试对所有行初始化的方法之外的TableLayoutP
做任何事情,它会告诉我:
对象引用未设置为对象的实例。
我能做什么? 有没有办法在方法中获取方法(我在意识到在输入时听起来有多愚蠢)或者其他任何方式来处理这种情况?
您正在通过GetRowHeights()
,返回每行的高度。 但是您要从RowStyles
集合中删除与第RowStyles
集合没有直接关系的集合。 我假设GetRowHeights()
返回的行多于RowStyles
。
为什么不:
BibTable.RowCount = 0; BibTable.RowStyles.Clear();
您正在通过GetRowHeights()
,返回每行的高度。 但是您要从RowStyles
集合中删除与第RowStyles
集合没有直接关系的集合。 我假设GetRowHeights()
返回的行多于RowStyles
。
为什么不:
上述就是C#学习教程:为什么我无法在Method中访问数据?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
BibTable.RowCount = 0; BibTable.RowStyles.Clear();
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/999764.html