在不同的窗口xaml MVVM中使用相同的名称绑定

时间:2015-12-17 07:18:09

标签: wpf xaml mvvm

我认为是可能的,但是在不同的窗口中使用相同的名称进行数据绑定是不错的做法?或者每个绑定都需要在所有应用程序中使用唯一名称,而不仅仅是在窗口范围内。如果我们使用MVVM。

<DatePicker SelectedDate="{Binding StartMeasureDateRestoreSelect}" />

Window1.xaml和Window2.xaml中的这个代码是同一个名称的问题,就像这里的“StartMeasureDateRestoreSelect”或者好的做法是使用不同的名称。

抱歉我的英语不好而且解释不太好。

1 个答案:

答案 0 :(得分:0)

拥有各种名称非常重要,因为它可以让其他开发人员看到您的程序更清晰,更好看。

了解Naming Convention

正如Wiki所说:

  

在计算机编程中,naming convention是一组规则   选择要用于标识符的字符序列   表示源代码中的变量,类型,函数和其他实体   和文档。

     

使用命名约定的原因(而不是允许   程序员选择任何字符序列)包括以下内容:

     
      
  • 减少阅读和理解源代码所需的工作量; 1
  •   
  • 使代码审核能够专注于更重要的问题,而不是争论语法和命名标准。
  •   
  • 启用代码质量审核工具,使其报告主要集中在语法和样式首选项以外的重要问题上。
  •   
  • 增强源代码外观(例如,通过禁用过长的名称或不清楚的缩写)。
  •   

在C#中命名属性的语法:

private DataTable employeeDataTable;
public DataTable EmployeeDataTable
{
   get { return employeeDataTable; }
   set
       {
         employeeDataTable = value;       
       }
}

最好使用前缀

命名bool个属性
public bool IsBusy { get; set; }

并命名您的类/属性/变量以了解它们的目标。例如:

public class Person//goal of this class is keep state/info about Person
{
    public string Name { get; set; }//goal of this property is keep state/info about 
   //Name of Person

    private void PopulateByPeople()// in my view it self-explainable name of method
    {
        employeeDataTable = new DataTable();
        for (int i = 0; i < 5; i++)
        {
            employeeDataTable.Columns.Add(i.ToString() + " column");
        }
        for (int i = 0; i < 50; i++)//Adding 50 DataRows
        {
            var theRow = employeeDataTable.NewRow();
            for (int j = 0; j < 5; j++)
            {
                theRow[j] = "o " + (i).ToString();
            }
            employeeDataTable.Rows.Add(theRow);                
        }
    }
}