1

オブジェクトのリストを表示するために WP アプリケーションで ItemsControl を使用しています (監視可能なコレクションをこのリストにバインドします)。WPF では、オブジェクト プロパティが更新された場合に UI を更新できますが、WP8 に関しては、どうすれば同じことができますか? 以下は WPF で使用される構文ですが、WP8 では Triggers not found と表示されます

       <ItemsControl> 
            <ItemsControl.ItemTemplate> 
                <DataTemplate> 
                        <DataTemplate.Triggers> 

                </DataTemplate.Triggers> 
                </DataTemplate> 
            </ItemsControl.ItemTemplate> 
        </ItemsControl>

WP8 で UI を更新するにはどうすればよいですか? 私が計画していることは、アイテムのボタンの可視性を設定するオブジェクトのプロパティに基づいています。

4

2 に答える 2

0

トリガーを使用するのではなく。コンバーター (IValueConverter を実装) を使用して、プロパティに基づいて可視性を設定するのはどうですか。したがって、xaml は次のようになります。

<button visibility="{binding YourObjectProperty, Converter={staticresource YourVisibilityConvert}}  ... />

次に、プロパティに対して propertychanged イベントが発生するたびに、UI はコンバーターによって返された値に基づいて可視性を更新します。

于 2013-09-19T10:12:54.207 に答える
0

Expression Blend を使用して動作を設定することができます

xmlns:ec="clr-namespace:Microsoft.Expression.Interactivity.Core;assembly=Microsoft.Expression.Interactions" x:Class="XXX_XXXX"

<Image Source="/Assets/Images/Tick.png"
                   Stretch="None"
                   HorizontalAlignment="Stretch" 
                   VerticalAlignment="Top">
                <interactivity:Interaction.Triggers>
                    <ec:DataTrigger Binding="{Binding Change}" Value="False">
                        <ec:ChangePropertyAction PropertyName="Source">
                            <ec:ChangePropertyAction.Value>

                                <BitmapImage UriSource="/Assets/Images/Close.png"/>
                            </ec:ChangePropertyAction.Value>
                        </ec:ChangePropertyAction>
                    </ec:DataTrigger>
                </interactivity:Interaction.Triggers>
            </Image>

MSDN

于 2015-03-18T18:12:37.197 に答える