[英]C# Winforms visual inheritance problem with DataGridView
在這里,我創建了一個BaseForm
,然后將其所有BaseForm.Designer.cs
private
成員設置為protected
。 然后具有可視的繼承/派生Form
。
現在,我可以在設計時調整大小或修改派生Form
中除DataGridView
之外的所有DataGridView
。 我發現DataGridView
鎖定在派生的Form
,即使它未鎖定在BaseForm
中也是BaseForm
。
可能是什么原因? 我應該再次尋找/檢查什么?
我有一個像這樣的基本形式:
我得到了這樣的形式:
這是一個已知的問題。
您可以創建一個用戶控件類並從DataGridView類派生
[Designer(typeof(System.Windows.Forms.Design.ControlDesigner))]
public class MyDataGridViewUserControl : DataGridView { }
某些.NET控件似乎有問題。 這里有個不錯的文章:
我猜想VS設計器會鎖定來自基類的控件。 因為您具有相同的初始化代碼,所以您將在基類內部更改grid的屬性,這會影響所有其他派生形式。
如果要更改網格的屬性,我建議為子表單使用單獨的網格,因為它的行為應有所不同。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.