我添加了System.Windows和Microsoft.LightSwitch.Threading;访问剪贴板。
当我运行此程序时,我收到此错误:无效的跨线程访问。
让剪贴板工作的任何想法?
partial void btnCopyFaucets_Execute()
{
// Write your code here.
try
{
string CopyText, nManu, nProductCode, nFaucet;
Faucets cpyfaucet = this.FaucetsSearch.SelectedItem;
nManu = Convert.ToString(cpyfaucet.Manufacturer);
nProductCode = Convert.ToString(cpyfaucet.ProductCode);
nFaucet = Convert.ToString(cpyfaucet.Faucet);
CopyText = nManu + " " + nProductCode + " " + nFaucet;
// THIS IS WHERE THE COMPILER IS NOT HAPPY.
Clipboard.SetText(CopyText);
}
catch (Exception damnit)
{
MessageBox.Show(damnit.Message);
}
}
答案 0 :(得分:3)
尝试使用这样的主调度程序:
Microsoft.LightSwitch.Threading.Dispatchers.Main.BeginInvoke(() =>
Clipboard.SetText(CopyText);
});
也许如果它是一个网络应用程序,那么你之后会有权限问题。