0
在我的應用程序中,我需要更改與ColumnHeader Font,fontsize等datagrid標題相關的屬性。由於目前沒有同一個屬性,因此我通過Style setters 。但問題在於單個屬性的更改(如FontSize),我必須創建SetterBase的整個集合並更新setterbase集合中的其他屬性。是否有任何其他方式來更新屬性,如在這種情況下。通過樣式更新Datagrid列標題屬性
代碼片段:在WPF
set
{
Style m_ColumnHeaderStyle = new Style(typeof(DataGridColumnHeader));
m_ColumnHeaderStyle.Setters.Add(m_ColumnFontWeightProperty);
m_ColumnHeaderStyle.Setters.Add(m_ColumnFontSizeProperty);
m_ColumnHeaderStyle.Setters.Add(m_ColumnFontItalicProperty);
m_ColumnFont = new Setter(DataGridColumnHeader.FontFamilyProperty, new FontFamily(value));
m_ColumnHeaderStyle.Setters.Add(m_ColumnFont);
this.MyDataGrid.ColumnHeaderStyle = m_ColumnHeaderStyle;
}
謝謝,但我必須將 更改爲 。你知道爲什麼會這樣嗎? –
Kris
2012-07-13 06:24:05
在我的例子中,我使用'DataContext = this;'來設置DataContext - 所有綁定指向的默認對象。在你的綁定中,你明確地指向名爲window的可視樹元素,這也是正確的。這是這個強大功能的很多用法之一。 – Rafal 2012-07-13 06:46:33
當我使用DATACONTEXT = THIS時,它不起作用。後來我們使用Window作爲綁定的元素。 – Kris 2012-07-13 09:47:50