簡體   English   中英

xaml中的綁定Click方法

[英]Binding Click method in xaml

在Windows 8中,C#+ XAML我有一些課程

Class ABC
{
 public string a {get; set;}
 public void someMethod()
 {
  **some code, changing a**
 }
}

和綁定在XAML

<ListBox x:Name="playlistBox">
     <ListBox.ItemTemplate>
          <DataTemplate>
               <StackPanel Orientation="Horizontal">
                     <TextBlock Text="{Binding a}"/>
                     <Button Name="removeAlbumBtn" Content="method" Click="**NEED BINDING TO SOMEMETHOD HERE**"/>
                </StackPanel>
           </DataTemplate>
      </ListBox.ItemTemplate>
  </ListBox>

所以我必須鍵入什么才能調用someMethod ???

您需要通過該xaml文件后面代碼中的處理程序方法來處理Click事件。 例如,如果您顯示的xaml在MyControl.xaml MyControl.xaml.cs中將具有以下方法:

private void removeAlbumBtn_Click(object sender, RoutedEventArgs e)
{
    var a = ((Button)sender).DataContext as ABC;

    if(a != null)
        a.someMethod();
}

並將xaml更改為:

<Button Name="removeAlbumBtn" Content="method" Click="removeAlbumBtn_Click"/>

您可以使用命令來完成。 但是您要做的工作量不只是編寫綁定它的方法。 WPF和Silverlight中有關命令的帖子可能會幫助您理解和實現命令: http : //tsells.wordpress.com/2010/06/23/command-binding-with-wpf-and-silverlight-net-4-0 -with-mv-vm /

它也是XAML的功能,因此也將在Windows 8上運行。

暫無
暫無

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

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