[英]MVVM Data Binding without Control
我正在使用C#,XAML和MVVMLight創建MVVM應用程序,但是在如何將數據從ViewModel綁定到Model而不顯示在控件上時遇到問題。 例如,我在模型中有一個數據庫,需要確定它是否存在並具有有效數據。 我可以從ViewModel中獲得它,而我只想在后台將View的值(可以是布爾值,字符串或其他值)綁定到View的代碼,而無需將其顯示在XAML控件上(類似於資源) 。 問題是我不知道該怎么做。
<Page.Resources>
<system:String x:Key="StringId" Text="{Binding Text}" />
</Page.Resources>
文本是數據上下文提供的字段,如果有一種簡便的方法可以訪問數據上下文的值而不使用ViewModel文件夾中的任何包含內容,則文本也可能會起作用。
嘗試將屬性綁定到Xaml中的Static Resource沒有意義。 因為,當您創建靜態資源時,您不想在xaml中重復相同的變量。 但是綁定可以實現此目標,區別在於可以通過代碼修改ViewModel的綁定。
現在,如果您希望具有可以從ViewModel修改的屬性,只需在需要綁定的位置進行操作:
在您的代碼中:
private string _property;
public string Property
{
get { return _property; }
set { _property= value; RaisePropertyChanged("Property"); }
}
但是,您需要xaml中的屬性:
<UserControl.Resources>
<System:String x:Key="Property">Text</System:String>
</UserControl.Resources>
綁定將是:
<Label Content="{StaticResource Property}"/>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.