WPF DataTrigger用于设置宽度窗口属性
我想根据ViewModel属性的值设置窗口的宽度属性。首先,我有一个ContentControl: 然后:WPF DataTrigger用于设置宽度窗口属性,wpf,xaml,datatemplate,Wpf,Xaml,Datatemplate,我想根据ViewModel属性的值设置窗口的宽度属性。首先,我有一个ContentControl: 然后: <DataTemplate DataType="{x:Type massedit:SimpleFieldVM}"> <ContentControl Content="{Binding .}"> <ContentControl.Style> <Style TargetT
<DataTemplate DataType="{x:Type massedit:SimpleFieldVM}">
<ContentControl Content="{Binding .}">
<ContentControl.Style>
<Style TargetType="{x:Type ContentControl}">
<Setter Property="ContentTemplate" Value="{StaticResource DefaultTemplate}" />
<Style.Triggers>
<!-- Without selector, only with DataTriggers select my ContentControl -->
<DataTrigger Binding="{Binding TargetFieldType}" Value="{x:Static eva:FieldDataType.ENum}">
<Setter Property="ContentTemplate" Value="{StaticResource ComboboxEnumTemplate}" />
<Setter Property="Width" Value="100"></Setter>
</DataTrigger>
<DataTrigger Binding="{Binding TargetFieldType}" Value="{x:Static eva:FieldDataType.List}">
<Setter Property="ContentTemplate" Value="{StaticResource ComboboxListTemplate}" />
<Setter Property="Width" Value="100"></Setter>
</DataTrigger>
<DataTrigger Binding="{Binding TargetFieldType}" Value="{x:Static eva:FieldDataType.Bit}">
<Setter Property="ContentTemplate" Value="{StaticResource BitTemplate}" />
<Setter Property="Width" Value="100"></Setter>
</DataTrigger>
<DataTrigger Binding="{Binding TargetFieldType}" Value="{x:Static eva:FieldDataType.Date}">
<Setter Property="ContentTemplate" Value="{StaticResource DateTemplate}" />
<Setter Property="Width" Value="150"></Setter>
</DataTrigger>
<DataTrigger Binding="{Binding TargetFieldType}" Value="{x:Static eva:FieldDataType.DatTime}">
<Setter Property="ContentTemplate" Value="{StaticResource DatTimeTemplate}" />
<Setter Property="Width" Value="150"></Setter>
</DataTrigger>
<DataTrigger Binding="{Binding TargetFieldType}" Value="{x:Static eva:FieldDataType.Time}">
<Setter Property="ContentTemplate" Value="{StaticResource TimeTemplate}" />
<Setter Property="Width" Value="50"></Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</ContentControl.Style>
</ContentControl>
</DataTemplate>
但是更改我的ContentControl的属性宽度。我想更改窗口的属性宽度 可以直接绑定Window.Width,也可以使用FitToContent属性 FitToContent将尝试使窗口适合其内容,这意味着如果您设法将内容设置为所需大小,则窗口将跟随。:)