【问题标题】:Trigger dialog buttons on IWebMatrixHost ShowDialog method在 IWebMatrixHost ShowDialog 方法上触发对话框按钮
【发布时间】:2012-09-08 19:34:13
【问题描述】:

我创建了一个自定义 XAML UserControl 类,我将其传递给 ShowDialog 方法。我希望能够通过在我的 UserControl 中生成的其他事件触发单击对话框上的 OK 按钮 - 例如双击 ListItem。我有处理双击的代码(甚至绑定到 MouseDown 并检查了点击次数),但我不知道如何触发父对话框的新事件以关闭它。

// Bound to TextBlock, part of a ListBox on a UserControl
private void TextBlock_MouseDown(object sender, MouseButtonEventArgs e)
{
    if (e.ClickCount == 2)
    {
        // trigger dialog to close with OK button
    }
}

【问题讨论】:

    标签: c# wpf webmatrix webmatrix-2


    【解决方案1】:

    让您的用户控件实现 IDialogContent。然后,您可以直接调用您实现的 CloseDialog 事件,这将触发对话框关闭。

    您需要通过在您的用户控件/视图模型上设置某种状态或适合您的特定扩展的一些其他数据来决定您希望如何在后续代码中处理它。

    // Bound to TextBlock, part of a ListBox on a UserControl
        private void TextBlock_MouseDown(object sender, MouseButtonEventArgs e)
        {
            if (e.ClickCount == 2)
            {
                CloseDialog(this, EventArgs.Empty);
            }
        }
    

    【讨论】:

      猜你喜欢
      • 2014-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-24
      • 1970-01-01
      • 1970-01-01
      • 2021-02-19
      • 1970-01-01
      相关资源
      最近更新 更多