将控件模板更改为其默认WPF XAML

时间:2019-06-30 19:02:38

标签: c# wpf xaml user-interface user-controls

我的自定义UserControls <UserControl.Resource>中有一个<ControlTemplate>。 每当<ControlTemplate>应用于用户控件时, UserControl已展开。一切正常,我可以设置UserControls 通过CodeBehind到自定义模板;我想在这里做的是 扩展后每当UserControl再次缩小时,我都想还原 分配新模板之前UserControl拥有的初始模板; 其默认模板。最好通过CodeBehind。

 <UserControl>
     <UserControl.Resources>
         <!--Expanded-->
         <ControlTemplate TargetType="UserControl" x:Key="TaskControlExpanded">
         <ControlTemplate/>
     <UserControl.Resources/>
     <!--Default Template-->
     <Grid>
         <Button x:Name="BtnExpand" Click="BtnExpandClick"/>
     <Grid/>    
 <UserControl>

后面的代码:

private void BtnEdit_Click(object sender, RoutedEventArgs e)
{
    this.Template = (ControlTemplate)this.FindResource("TaskControlExpanded");
}


0 个答案:

没有答案