1
我有一个DataGridView在每一行中有不同的控制类型现在我想根据该控件类型在每一行中创建控件是否可能? 如果是,那么如何?如何在Windows窗体应用程序的DataGridView行中动态添加Contols?
我有一个DataGridView在每一行中有不同的控制类型现在我想根据该控件类型在每一行中创建控件是否可能? 如果是,那么如何?如何在Windows窗体应用程序的DataGridView行中动态添加Contols?
您可以在网格的OnRowDatabound加控制,那么你可以到你的行中的控件
将控件添加到电池中使用
void GridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
GridViewRow row = e.Row as GridViewRow;
if (row != null)
{
MyObject myObject = new MyObject();
row.Cells[0].Controls.Add(myObject);
}
}
将控件添加到整个行使用
void GridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
GridViewRow row = e.Row as GridViewRow;
if (row != null)
{
MyObject myObject = new MyObject();
row.Controls.Add(myObject);
}
}
这里看看Windows窗体网格
你可以通过继承DataGridViewColumn类或其任何派生类来创建自己的列类,以提供自定义外观,行为或托管控件。欲了解更多信息,请参阅如何:自定义单元格和列在Windows扩大他们的行为和外观窗体DataGridView控件
http://msdn.microsoft.com/en-us/library/bxt3k60s%28v=vs.80%29.aspx
如何:自定义单元格和列在Windows扩大他们的行为窗体DataGridView控件和外观
http://msdn.microsoft.com/en-us/library/7fb61s43%28v=vs.80%29.aspx
错误富林:-(System.Windows.Forms.DataGridViewCell“不包含一个定义‘控制’和没有扩展方法‘控制’接受型的第一参数” System.Windows.Forms的.DataGridViewCell'可以找到(你是否错过了一个使用指令或程序集引用?) – 2012-07-16 09:52:39
它是一个Windows窗体应用程序,它不是一个GridView,它是一个Windows应用程序的DataGridView – 2012-07-16 09:54:16
尝试值属性,使其可以容纳一个对象http://msdn.microsoft.com/zh-cn/ -us /库/ system.windows.forms.datagridviewcell.aspx – JohnnBlade 2012-07-16 09:57:26