我正在尝试使用剪贴板复制粘贴控件实例。我能够复制控件但无法取回复制的对象。
下面的示例代码。
[Serializable]
public class myControl
{
private Control _copiedControl;
public myControl(Control ctrl)
{
_copiedControl = ctrl;
}
public Control CopiedControl
{
get
{
return _copiedControl;
}
set
{
_copiedControl = value;
}
}
}
private void btnCopy_Click(object sender,EventArgs e)
{
Clipboard.SetData("myControl", new myControl((Control)myButton));
}
private void btnPaste_Click(object sender, EventArgs e)
{
if(Clipboard.ContainsData("myControl"))
{
// Condition is satisfied here..
myControl obj = Clipboard.GetData("myControl") as myControl;
// obj is null and control is lost..
if(obj != null)
{
myPanel.Controls.Add(obj.CopiedControl);
}
}
}
我无法使用 GetData() 方法获取复制的控件。我不确定有什么问题,有人可以指导我吗?