如何在代码中访问x:Name-property?

Hed*_*dge 2 .net c# wpf xaml

我在我的XAML文件中将x:Name分配给了一个可以触发MouseDown事件的对象.在那种情况下,我想再次获取发件人的x:name-attribute.我怎么做?

该对象看起来像这样:

<ModelUIElement3D MouseDown="ModelUIElement3D_MouseDown" x:Name="trololo">
Run Code Online (Sandbox Code Playgroud)

Chr*_*lor 6

如果我已正确理解您的问题,您可以Name通过将发件人转发给a 来访问该属性FrameworkElement.

或者,您可以只使用设计器创建的引用对象,实例名称与您在x:Name属性中指定的名称相同.

以下是两种选择.

  private void ModelUIElement3D_MouseDown(object sender, MouseButtonEventArgs e)
  {
    var element = sender as FrameworkElement;

    if (element != null)
    {
      if (element.Name == "trololo")
      {
      }
    }

    // Or

    if (sender == trololo)
    {
    }

  }
Run Code Online (Sandbox Code Playgroud)