WinForms - DataGridView从GroupBox继承样式
问题描述:
我有一个奇怪的问题,我不知道这是在GroupBox/TabControl中的.Net DataGridView的默认行为。WinForms - DataGridView从GroupBox继承样式
我从头创建了一个新的WinForm项目,并创建了一个GroupBox(更改了文本样式)。就像这样:
alt text http://www.freeimagehosting.net/uploads/65f5f2762d.png
然后,我创建了一个简单的DataGridView,没有字体风格可言,像这样:
alt text http://www.freeimagehosting.net/uploads/09f55f951a.png
然后,在设计模式,我拖着的DataGridView组框,并且这种神奇的内部刚刚发生:
alt text http://www.freeimagehosting.net/uploads/d0334132f0.png
我的问题是,我可以禁用此行为吗?如果我在GroupBox之外改变DataGridView样式,然后将其拖入,导致丢失所有样式。
只为备案,此表格根本没有无代码。
在此先感谢。
答
您遇到的情况称为Ambient Properties。简而言之,它是一种机制,如果属性未明确分配给某个控件,它将从其父项“继承”某些属性值。我不知道有一种方法来防止这种行为,除了将希望的值分配给属性。
我也注意到了这个问题,最特别的是与字体。这似乎是由设计,但我从来没有一个非默认样式在拖入时发生变化,所以这看起来很奇怪。 我发现“禁用”它的唯一方法是更改从容器默认的属性,一旦它被拖入。 – 2010-03-11 13:18:23