真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

WPF中MVVM如何綁定DataGrid并動態(tài)修改單元格

1.什么是MVVM?

成都創(chuàng)新互聯(lián)公司是一家專業(yè)提供青山企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站建設(shè)、做網(wǎng)站HTML5建站、小程序制作等業(yè)務(wù)。10年已為青山眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計公司優(yōu)惠進(jìn)行中。

 

MVVM是Model、View、ViewModel的簡寫,這種模式的引入就是使用ViewModel來降低View和Model的耦合,說是降低View和Model的耦合。也可以說是是降低界面和邏輯的耦合,理想情況下界面和邏輯是完全分離的,單方面更改界面時不需要對邏輯代碼改動,同樣的邏輯代碼更改時也不需要更改界面。同一個ViewModel可以使用完全不用的View進(jìn)行展示,同一個View也可以使用不同的ViewModel以提供不同的操作。

 

WPF 中 MVVM 如何綁定DataGrid 并動態(tài)修改單元格

 

2.項目目錄

 

從上面的圖我們可以看出,處理事務(wù)的文件有幾個類型:View,ViewModel,Command,Property,Model,這個幾個類型的圖片

 

WPF 中 MVVM 如何綁定DataGrid 并動態(tài)修改單元格

 

最下面的ViewModelBase.cs就是Property,對應(yīng)處理觸發(fā)屬性發(fā)現(xiàn)變化的事務(wù)。

 

3.代碼分析:

 

a):入口 App.xaml

 private void Application_Startup(object sender, StartupEventArgs e)
        {
           //創(chuàng)建一個ViewModel;
            MainViewModel mode = new MainViewModel();
           //初始化ViewModel內(nèi)容
            mode.ItemDatas = new ObservableCollection();
            mode.ItemDatas.Add(new ItemData { Title = "TST", Content = "sss" });
            mode.ItemDatas.Add(new ItemData { Title = "2TST", Content = "2sss" });    
           //初始化View;        
            MainWindow main = new MVVMGridDemo.MainWindow();
           //把ViewModel綁定到View上
            main.DataContext = mode;
           //顯示窗口
            main.Show();
        }

 

b):MainWindow窗口ViewModel;

 

    view代碼

    
        
            
                
                
            
        
        
        
    

 

viewmodel代碼

 

 public class MainViewModel : ViewModelBase    {
        private ObservableCollection _itemdatas;//view 中Name為Texxt的值在這里實現(xiàn)
        private string _texxt;
        public string TexxT        {
            get { return this._texxt; }
            set
            {
                this._texxt = value;
                OnPropertyChanged("TexxT");
            }
        }//view中itemsourse 為ItemData的數(shù)據(jù)綁定;
        public ObservableCollection ItemDatas        {
            get { return _itemdatas; }
            set
            {
                this._itemdatas = value;
                OnPropertyChanged("ItemDatas");
            }
        }//修改按鈕點擊事件在這里實現(xiàn)
        public ICommand ButtonClick        {
            get
            {

                return new ActionCommand(p => BClick(p));
            }
        }


        private void BClick(object obj)
        {

            DataGrid box = (DataGrid)obj;

            ItemDatas[0].Title = TexxT;//刷新dataGrid
            box.Items.Refresh();

        }

    }

 

全部源代碼:https://github.com/servucn/MVVMGridDemo

交流地址:http://www.ucasp.net/wpfresources/mvvmgriddemo.shtml


標(biāo)題名稱:WPF中MVVM如何綁定DataGrid并動態(tài)修改單元格
文章鏈接:http://weahome.cn/article/jpcgpo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部