我'm currently working on an MultiColumnComboBox which contains an DataGridView as DropDownControl. I'已找到https://www.codeproject.com/Articles/25471/Customizable-ComboBox-Drop-Down并将其用作Parentclass .
这是守则的重要部分 .
namespace GUILib
{
partial class MultiColumnDropDown
{
...
[
Browsable(true),
DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden),
TypeConverterAttribute(typeof(System.ComponentModel.ExpandableObjectConverter))
]
public System.Windows.Forms.DataGridView datagrid
{
get
{
return dataGridView1;
}
set
{
dataGridView1 = value;
}
}
...
#region Vom Komponenten-Designer generierter Code
///
/// Erforderliche Methode für die Designerunterstützung.
/// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden.
///
private void InitializeComponent()
{
this.dataGridView1 = new System.Windows.Forms.DataGridView();
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit();
this.SuspendLayout();
//
// dataGridView1
//
this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridView1.Location = new System.Drawing.Point(0, 0);
this.dataGridView1.Name = "dataGridView1";
this.dataGridView1.Size = new System.Drawing.Size(240, 150);
this.dataGridView1.TabIndex = 0;
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).EndInit();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.DataGridView dataGridView1;
}
}
我的问题是当我将这个自定义控件添加到表单时,我可以更改除列之外的datagrid的每个属性 . 当我尝试通过单击带有三个点的按钮来修改列时,我将收到错误:
翻译它是“对象引用未设置为对象的实例” . 如果我将在代码中添加Columns(multiColumnDropDown1.datagrid.Columns.Add),则会在运行时添加列 .
有人能告诉我我在哪里犯了错误吗?
问候迈克尔
附:对不起,我的英语不好,我希望有人明白我的意思,可以帮助我 .