【发布时间】:2017-06-29 15:33:54
【问题描述】:
插入不添加到属性中的变量
private string _DirectoryList = "";
public string DirectoryListAdd
{
get { return _DirectoryList; }
set
{
_DirectoryList.Insert(0, value + Environment.NewLine);
OnPropertyChanged("DirectoryListAdd");
}
}
public MainWindow()
{
InitializeComponent();
DirectoryListAdd = "a";
DirectoryListAdd = "b";
Console.WriteLine(DirectoryListAdd);
}
这是返回“”。我希望它会回来
a
b
【问题讨论】:
-
不要那样使用属性。分配应该意味着分配。此外,
String是不可变的。String.Insert()返回一个您要丢弃的新字符串。我很难想象是什么阻止了您阅读有关您正在调用的方法的文档。 -
虽然第一条评论的最后一部分可能有不同的措辞,但对于用户只需在不起作用的方法名称上按
F1即可轻松解决的问题确实会带来一些挫败感“他们期望如何”,因为对功能的期望应该至少部分基于文档。
标签: c# string properties insert