GridViewDesigner.PreFilterProperties(IDictionary) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
供設計工具使用,以便在 [屬性] 方格的顯示中移除屬性或新增屬性,或是遮蔽關聯控制項的屬性。
protected:
override void PreFilterProperties(System::Collections::IDictionary ^ properties);
protected override void PreFilterProperties (System.Collections.IDictionary properties);
override this.PreFilterProperties : System.Collections.IDictionary -> unit
Protected Overrides Sub PreFilterProperties (properties As IDictionary)
參數
- properties
- IDictionary
集合,實作已加入和已遮蔽屬性的 IDictionary。
範例
下列程式碼範例示範如何在設計階段覆寫 PreFilterProperties 繼承自 之 GridViewDesigner 類別中的 方法,以變更控制項的 GridView Properties 方格。 此範例會在 Page [屬性 ] 方格中顯示內容。
// Shadow the control properties with design-time properties.
protected override void PreFilterProperties(IDictionary properties)
{
// Call the base method first.
base.PreFilterProperties(properties);
// Make the Page visible in the Properties grid.
PropertyDescriptor selectProp =
(PropertyDescriptor)properties["Page"];
properties["Page"] =
TypeDescriptor.CreateProperty(selectProp.ComponentType,
selectProp, BrowsableAttribute.Yes);
} // PreFilterProperties
' Shadow the control properties with design-time properties.
Protected Overrides Sub PreFilterProperties( _
ByVal properties As IDictionary)
' Call the base method first.
MyBase.PreFilterProperties(properties)
' Make the Page visible in the Properties grid.
Dim selectProp As PropertyDescriptor = _
CType(properties("Page"), PropertyDescriptor)
properties("Page") = _
TypeDescriptor.CreateProperty(selectProp.ComponentType, _
selectProp, BrowsableAttribute.Yes)
End Sub
備註
控制項設計工具會使用衍生自 ComponentDesigner.PreFilterProperties 方法的方法,利用設計工具實作的對應設計階段屬性來遮蔽各種控制項屬性,以及將屬性加入至 Properties 方格或從 [屬性 ] 方格中移除屬性。
GridView針對控制項,當控制項處於範本模式時, PreFilterProperties 方法會將 Columns 屬性的物件設定 BrowsableAttribute 為 false
。 因此,無法使用 [ 欄位 ] 對話方塊刪除處於範本模式的資料行。
給繼承者的注意事項
覆寫 方法, PreFilterProperties(IDictionary) 以在設計階段屬性集合中加入或變更屬性的屬性。 在執行其他處理之前,請務必先呼叫基底方法。