Как я должен ссылаться на пользовательский элемент управления в коде C # за триггером события файла? - PullRequest
0 голосов
/ 06 декабря 2009

На странице Xaml я ссылаюсь на свой пользовательский элемент управления следующим образом:

<MyNamespace:CustControl x:Name="Cust1" />

Теперь я хочу изменить свойство этого пользовательского элемента управления в триггере события MouseLeftButtonDown:

private void Grid_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
    {

    }

Но когда я пытаюсь написать что-то вроде

CustControl.IsSelected = true;

Ошибка говорит: ссылка на объект обязательна ..

Я думаю, что это все о пространстве имен "MyNamespace", но я не знаю, как ссылаться на него.

Ответы [ 5 ]

3 голосов
/ 06 декабря 2009

CustControl - название класса; Cust1 - это имя экземпляра.

Попробуйте Cust1.IsSelected = true.

3 голосов
/ 06 декабря 2009

Вы должны ссылаться на Cust1, но иногда Visual Studio не сразу создает элемент поля для элемента управления. Попробуйте ввести Cust1.IsSelected, и даже если Visual Studio это не понравится, попробуйте выполнить сборку, чтобы увидеть, удастся ли это.

3 голосов
/ 06 декабря 2009

x: Name - это «Cust1», поэтому вы бы назвали его Cust1:

Cust1.IsSelected = true;

Т.е. Cust1 - это имя instance ;CustControl - это имя типа .

2 голосов
/ 06 декабря 2009

попробовать:

Cust1.IsSelected = true;

где "Cust1" - это свойство Name элемента управления

Если WPF & asp.net работают так же, как «CustControl» - это имя класса, «Cust1» - это экземпляр.

2 голосов
/ 06 декабря 2009

Вы бы указали, что это «Cust1», а не его тип.

Cust1.IsSelected = true;
...