我在主窗口中創建了WPF代碼,現在我想使用MVVM。 我複製所有數據從主窗口的XAML到用戶控制和 創建新的類與在xaml.cs類如何綁定viewModel來查看
在用戶控件類我添加
代碼視圖模型夾public UserControl()
{
InitializeComponent();
this.DataContext = new ModelView();
}
目前有兩期
1.In我指的ListBox作爲showen下面的主窗口,現在可能是用戶控件不知道這件事,我應該怎麼解決呢?
listBox上的錯誤是「無法在靜態上下文中訪問非靜態屬性項目源」。
這裏例如我有錯誤:ListBox.ItemsSource = _UsersList;
class ModelView
{
public ObservableCollection<User> _UsersList = new ObservableCollection<User>();
public ObservableCollection<User> UserList
{
get { return _UsersList; }
}
public void initUsers()
{
_UsersList.Add(new User {Name = "Mike"});
_UsersList.Add(new User {Name = "Jhon"});
ListBox.ItemsSource = _UsersList;
}
2.in除了在視圖模型我複製一些代碼從類似方法 DropText_PreviewDragEnter主窗口這是在PREVI,ewDragEnter下面在XAML 審閱和現在有錯誤,我如何應該避免?
<TextBox x:Name="FullName"
AcceptsReturn="True"
AllowDrop="True"
PreviewDragEnter="DropText_PreviewDragEnter"
HorizontalAlignment="Left" Height="20" Margin="360,70,0,0" TextWrapping="Wrap" Text=""
VerticalAlignment="Top" Width="70"/>
一團糟。您根本沒有正確使用MVVM,您沒有綁定,並且您不瞭解靜態和實例屬性之間的區別。這裏發生的事情太多了。 – Will