2014-07-17 35 views
1

我有一個longlistselector,其模板需要在應用程序欄按鈕單擊上進行更改。此外,appbar模板也隨着按鈕點擊而改變。 來看cs文件裏面使用按鈕單擊從Viewmodel更改應用程序欄和長列表選擇器的模板

private void ApplicationBarIconButton_Click_1(object sender, EventArgs e) 
    {  
    DataTemplate dt; 
      dt = (DataTemplate)this.Resources["NewTemplateSelection"]; //new template to apply 
      list.ItemTemplate = dt; 

      this.ApplicationBar = this.Resources["selectmodeAppBar"] as ApplicationBar; //new 
template for app bar 
} 

兩個tample都在裏面page.resource是很容易。 我想使用MVVM Light使用MVVM模式。但不能創建視圖模型 我是新來MVVM命令,

private void ApplicationBarIconButton_Click_1(object sender, EventArgs e) 
    {  
     var vm = (ViewModel)DataContext; 
     vm.SelectionCommand.Execute(null); 
     } 

內部視圖模型

SelectionCommand = new RelayCommand(() => 
     { 

      // DataTemplate dt; 

      // dt = (DataTemplate) email.Resources["ViewEmailTemplateSelection"]; 
      // email.list.ItemTemplate = dt; 
      // email.ApplicationBar.IsVisible = false; 

      //email.ApplicationBar = email.Resources["selectmodeAppBar"] as ApplicationBar; 
     //} 
     }); 

是有辦法做到這一點,我試圖用繩子在綁定longlistselector的ItemTemplate中viewmodel 但我認爲它不允許在WP8中綁定staticresource。 請建議一些方法在Viewmodel中執行操作。

回答

相關問題