2017-06-07 165 views
0

我有一個TextBox綁定到string屬性ViewModel,我有一個ButtonCommand。現在我想通過屬性本身如果可能作爲CommandParameter。 這可能嗎?Xaml通過綁定屬性到命令

的XAML部分:

<TextBox Text="{Binding FilePath, UpdateSourceTrigger=PropertyChanged}"/> 
<Button Command="{Binding BrowseCommand}" CommandParameter="{Binding FilePath}" Content="..." /> 

而且Command看起來是這樣,但我有什麼類型把RelayCommand<?>,而不是什麼,我需要的CommandParameter結合?

public ICommand BrowseCommand => this.browseCommand ?? (this.browseCommand = new RelayCommand<?>(this.Browse)); 
+0

filepath是字符串類型我承擔? – WBuck

+0

是的,我想通過屬性本身,而不是它的價值(如果可能的話) –

+0

這是不可能的。 {綁定}解析*值*。 – mm8

回答

1

這應該如果您正在使用從MvvmLight的RelayCommand<T>類工作:

public ICommand BrowseCommand => this.browseCommand ?? (this.browseCommand = new RelayCommand<string>(this.Browse)); 

private void Browse(string obj) 
{ 

} 
+0

感謝您的回答,我也嘗試過,它的工作原理,但'obj'擁有財產的價值,而不是財產本身。我正在尋找一種方式,以便在'Browse'內部,我可以使用'obj'作爲它的屬性(例如,設置'obj'會顯示在UI –

+1

這不支持。您將獲得屬性的*值*作爲命令參數傳遞 – mm8

+0

所以沒有辦法傳遞實際屬性?好吧,謝謝你的回答 –