2013-04-09 3 views
0

Я хочу инициализировать и показать эллипс (форму WPF) в функции. Имя эллипса должно быть присвоено функции как параметр.Получение имени для формы WPF из переменной

Есть ли возможность сделать что-то подобное?

Edit:

Ниже приводится:

private void A1_Click(object sender, RoutedEventArgs e) 
    { 
     textBox1.Text = "Feld A1 gedrückt";    
     //Spielstein setzen 
     //Rêgeln überprüfen 
     myEllipse = new Ellipse(); 
     myEllipse.Fill = System.Windows.Media.Brushes.Black; 
     myEllipse.HorizontalAlignment = HorizontalAlignment.Left; 
     myEllipse.VerticalAlignment = VerticalAlignment.Top; 
     myEllipse.Margin = new Thickness(2, 2, 0, 0); 
     myEllipse.Width = 45; 
     myEllipse.Height = 45; 
     grid3.Children.Add(myEllipse); 
     A1.IsHitTestVisible = false; 

    } 

То, что я хочу сделать, это получить имя ("myEllipse") из переменной строки. Например:

string name = 'myEllipse'; 
name = newEllipse(); 
myEllipse.Fill = System.Windows.Media.Brushes.Black; 
+0

Чувак, пожалуйста, уточните. Опубликуйте свой XAML или что-то в этом роде. Кроме того, в WPF вы не манипулируете элементами пользовательского интерфейса в коде (обычно), поэтому, пожалуйста, объясните, что вам нужно, и я могу сказать вам правильный способ сделать это в WPF. –

+0

Проверьте отредактированный текст в моем первом сообщении. – SaintCore

+0

Я не уверен на 100%, но если вы говорите о 'Name =" SomeName ", который обычно находится в XAML, я думаю, что это имя для компилятора, но необязательно значение поле или свойство объекта. Я мог ошибаться, хотя ... – Steve

ответ

0

я беру его из кода, вы пытаетесь создать несколько экземпляров Ellipse, которые затем можно вспомнить и изменить при необходимости? Если это так, одним из способов сделать это является создание списка или словаря и добавление эллипсов, которые вы им создаете, которые затем можно вызвать при необходимости через индекс (если это список) или ключ (если это словарь).

List<Ellipse> myEllipses = new List<Ellipse>(); 

Private void A1_Click(object sender, RoutedEventArgs e) 
{ 
    var myEllipse = new Ellipse(); 
    myEllipses.Add(myEllipse); 
    ... 
} 
+0

Это именно то, что я искал, thx много. – SaintCore

Смежные вопросы