0
我得到EN“”对话框必须为用户启动”错误。对话框必须是用户启动的问题和异步。请求
任何线索怎么可能解决?
谢谢!
private void ExportDataToCSV()
{
string separator = GetSeparator();
LoadClientContentItemStatistics(); // async. request of MVVM Light Toolkit
foreach (var item in this._view)
{
sb.AppendLine("\"" + item.Player.PlayerGroup.Name + "\"" + separator + "\"" + item.Player.Name + "\"" + separator + "\"" + item.ClientContentItem.Name + "\"" + separator + "\"" + item.TotalTime.ToString() + "\"" + separator + "\"" + item.TotalQuantity.ToString() + "\"" + separator + Environment.NewLine);
}
SaveFileDialog sfd = new SaveFileDialog()
{
DefaultExt = "csv",
Filter = "CSV Files (*.csv)|*.csv|All files (*.*)|*.*",
FilterIndex = 1
};
if (sfd.ShowDialog() == true) // "Dialogs must be user-initiated" ERROR
{
using (Stream stream = sfd.OpenFile())
{
using (StreamWriter writer = new StreamWriter(stream))
{
writer.Write(sb.ToString());
writer.Close();
}
stream.Close();
}
}
IsExport = true;
}
但是我得到的数据是异步的我怎么解决它然后呢 – 2012-07-11 17:40:19
典型的解决方案是弹出消息说你有需要保存的数据并有一个按钮供他们保存/取消 – 2012-07-11 17:41:38
所以我显示弹出消息,然后获取数据异步。并且只有在显示对话窗口之后? – 2012-07-11 17:44:22