在我当前的项目中,我试图找到一种方法来重置项目中所有datagridviews的默认样式。我试图在设计器中设置它,但更改只保留第一个构建,然后被覆盖。
最终目标是我可以设置一个可以更改字体大小,对齐方式,颜色等的常用位置......然后这些更改将出现在整个程序中。这将使我们项目中的所有datagridviews保持一致,而不必为每个单独的datagridview重新复制值20次。
更新:加载datagridview的方法已更改,以便不是在数据集中设置所有数据,而是将该数据集传递给gridview,我们现在将datagridview传递给方法(在所有列中完成所有列设置)设计者)并加载方法中的行。 (很多'更清洁'的解决方案,从30行代码到1行代码加载一行)
答案 0 :(得分:2)
您可以对DataGridView
类进行子类化,并将您想要的属性设置为构造函数中的新默认值。然后,您可以使用新的内容DataGridView
而不是使用内置的{。}}。
public class MyGrid :DataGridView
{
public MyGrid()
{
//I'm not a designer :)
this.BackgroundColor = Color.AliceBlue;
this.ForeColor = Color.Red;
//other properties...
}
}
如果你只在一个项目中使用它,你可以将这个类添加到该项目中,但如果没有,你可以创建一个单独的dll与其中的类(加上任何其他扩展控件)。
返回表单,然后在工具箱中右键单击并选择选择项目... 如果您浏览到您构建控件的DLL(或者如果它在您的exe项目中为exe),您可以勾选您所做的控件。这使得添加到设计界面变得非常简单:
工具箱中有控件:
答案 1 :(得分:0)
您可以定义CSS样式,当您定义gridview时,只需添加属性cssclass =" css_style_name"这应该有效。
<asp:GridView ID="`GridOne" runat="server" CssClass="style_name">
</asp:GridView>