绑定到不直接在ViewModel

时间:2018-03-01 14:18:14

标签: c# xaml uwp win-universal-app uwp-xaml

我想将我的一个类中的方法绑定到UI中的按钮。

我目前有一个工作版本,但我不喜欢它因为我只想保存代码,我真的很想直接调用这个方法...

Page.xaml

<Button Content="Request Data" 
        FontSize="20" 
        FontWeight="Bold" 
        HorizontalAlignment="Center" 
        Margin="0 20 0 0" 
        Click="{x:Bind ViewModel.RequestData}" />  //this is how I call it at the moment

<Button Content="Request Data" 
        FontSize="20" 
        FontWeight="Bold" 
        HorizontalAlignment="Center" 
        Margin="0 20 0 0" 
        Click="{x:Bind ViewModel.DataBlock.RequestData}" /> //this is how I tried to call it (which seems totally fine to me)
        //Error i get is "RequestData is not a method"

Page.xaml.cs

public MainPage()
{
    this.InitializeComponent();

    this.ViewModel = new MainViewModel();
}

public MainViewModel ViewModel { get; set; }

ViewModel (只是这种情况下使用过的代码)

public class MainViewModel
{
    public Data DataBlock = new Data();

    public async void RequestData()
    {
         await DataBlock.RequestData();
    }
}

数据块

public class Data
{
    public async Task RequestData
    {
         //Method here
    }
}

我只是将代码缩短到最重要的位。还有更多像这样的方法...我真的很想直接调用它们而不是用另一种方法调用它们:/

当我尝试直接绑定它时,它告诉我它不是一种方法。

我真的很感激这里的一点帮助:)

0 个答案:

没有答案