2012-01-23 22 views

回答

3

有幾種方法可以做到這一點,我可以想到,但可悲的是他們都不是特別容易。

一種方法是使用Blend或類似的工具來獲取RadTreeViewItem類的模板。 RadTreeViewItem類及其模板位於Telerik.Windows.Controls.Navigation程序集中。獲取此模板的副本並修改此模板中的CheckBox,以根據需要自定義其外觀。

要使用該模板,添加ControlTemplateStyle到XAML頁面<UserControl.Resources>元素,如下所示:

<UserControl.Resources> 
    <ControlTemplate x:Key="myRadTreeViewItemTemplate" TargetType="telerik:RadTreeViewItem"> 
     <!-- modified template goes here... --> 
    </ControlTemplate> 
    <Style TargetType="telerik:RadTreeViewItem"> 
     <Setter Property="Template" Value={StaticResource myRadTreeViewItemTemplate}" /> 
    </Style> 
</UserControl.Resources> 

這應該然後修改後的模板適用於任何RadTreeViews在同一個XAML文件。

請注意,我們必須使用implicit style(即一個沒有x:Key),因爲似乎沒有其他的方式來告訴RadTreeView給定樣式應用到其子項。


或者,您可以modify a built-in theme。此方法還可以更改應用程序中其他Telerik控件內使用的CheckBox的樣式,例如RadGridView中的GridViewCheckBoxColumn。


編輯:如果你想爲CheckBox模板在默認情況下,RadTreeView使用, 你會在主題找到\辦公室\黑\ Telerik的的內System.Windows.Controls.xaml .Windows.Controls程序集。這假設你使用'Office Black'主題;如果您使用不同的Telerik主題,請調整此文件的路徑。