我的属性存在问题,该属性具有[DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)]属性:
[DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)]
public String FileName
{
get
{
return this._fileName;
}
set
{
File.Move(this._fileName, value);
this._fileName = value;
}
}
如果我对File.Move方法发表评论,一切都很好,但是如果在属性窗口中属性FileName已更改,我想重命名我的fileName。
为什么DesignerSerializationVisibility属性不接受setter中的方法?有没有办法解决这个问题?
谢谢!
答案 0 :(得分:0)
您应该将File.Move
语句包含在Try ... Catch块中。
当然,在属性中执行 File.Move
操作可能不是放置此类代码的最佳位置,尤其是因为Designer每次打开时都会触发该方法。 / p>