绑定函数参数UWP

时间:2016-08-09 16:04:28

标签: c# uwp uwp-xaml

我的XAML代码中有一个列表视图,用于显示列表中的项目,当我双击它时,我想“选择”。

<ListView x:Name="sounds">
    <ListView.ItemTemplate>
        <DataTemplate>
            <StackPanel Orientation="Horizontal" DoubleTapped="select_cue({Binding})">
                <TextBlock .../>
                <Slider .../>
                ...
            </StackPanel>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>

我希望在StackPanel为“DoubleTapped”时调用我的C#代码中的函数。

public void select_cue(SoundCue cue) {
    //find cue in list of cues
    //make current cue point to passed in cue if it is in the list
}

然而,当我尝试编译它时,我得到“错误:CS1026)”。我试图搜索我确定存在的这个功能(因为类似AngularJS的应用程序API的样式确实具有此功能)。

1 个答案:

答案 0 :(得分:1)

您需要以稍微不同的方式更改访问项目的模式。

<ListView x:Name="sounds">
    <ListView.ItemTemplate>
        <DataTemplate>
            <StackPanel Orientation="Horizontal" DoubleTapped="StackPanel_DoubleTapped">
                <TextBlock .../>
                <Slider .../>
                ...
            </StackPanel>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>

你的 StackPanel_DoubleTapped 将是

private void StackPanel_DoubleTapped(object sender, DoubleTappedRoutedEventArgs e)
{
    //Since you are databinding your sounds, sounds.SelectedItem will be your selected cue.
}