如何使wpf组合框记住以前选择的值,即使将其更改为新值?

时间:2013-04-05 12:35:49

标签: visual-studio-2010 mvvm wpf-4.0

即使用户从组合框项目中选择新值,我也希望将wpf组合框的默认/选定值显示为粗体。如何使wpf组合框记住之前选择的值并使其变为粗体,以便用户可以轻松识别前一个值,因为它是粗体。

请帮助?

由于

1 个答案:

答案 0 :(得分:0)

你的组合框的对象是如何创建的?我会在类中添加一个名为DefaultSelected的布尔属性,然后在组合框中使用datatemplate触发器来设置具有DefaultSelected = true的一个对象的样式。

      <DataTemplate x:Key="ComboTemplate" >
            <StackPanel Orientation="Horizontal">
                <TextBlock x:Name="myTextBlock" Text="{Binding ObjectName}" VerticalAlignment="Center"  />
            </StackPanel>
            <DataTemplate.Triggers>
                <DataTrigger Binding="{Binding DefaultSelected}" Value="True" >
                    <DataTrigger.Setters>
                        <Setter TargetName="myTextBlock" 
                        Property="FontWeight" 
                        Value="Bold"/>
                    </DataTrigger.Setters>
                </DataTrigger>
            </DataTemplate.Triggers>
        </DataTemplate>


                <ComboBox 
                        ItemsSource="{Binding myList, Mode=OneTime}"
                          ItemTemplate="{DynamicResource ComboTemplate}">                        
                </ComboBox>

这是未经测试的,抱歉,但应该让你朝着正确的方向前进

Ĵ