簡體   English   中英

xaml Windows Phone 8.1從模板綁定到頁面

[英]xaml windows phone 8.1 binding to page from template

我正在嘗試將DataTemplate(用於列表框)中的復選框上的可見性綁定到ViewModel上的屬性。 我想顯示和隱藏具有一個屬性的所有復選框。

經過所有搜索,我找不到解決方案。 這是到目前為止我無法使用的代碼。

<DataTemplate x:Key="GroupTemplate">
    <Grid >
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="40"/>
            <ColumnDefinition Width="Auto"/>
        </Grid.ColumnDefinitions>
        <CheckBox  Visibility="{Binding CheckboxVisible, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BooleanToVisibilityConverter}}"  Grid.Column="0" />
        <TextBlock  Text="{Binding GroupName}" Grid.Column="1"/>
    </Grid>
</DataTemplate>

public class GroupListViewModel : ViewModelBase
{
    private bool _checkboxVisible;
    public bool CheckboxVisible
    {
        get
        {
            return _checkboxVisible;
        }
        set
        {
            Set(() => CheckboxVisible, ref _checkboxVisible, value);
        }
    }               
    // ...
}   

GroupListViewModel是具有此數據模板的項目控件的DataContext嗎? 然后,您可以將名稱添加到項目控件並按名稱訪問它,例如:

<GridView x:Name="items">
...
<CheckBox  Visibility="{Binding DataContext.CheckboxVisible, ElementName=items, Converter={StaticResource BooleanToVisibilityConverter}}"  Grid.Column="0" /

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM