2014-11-26 2 views
-3

Вот метод в моем Xaml.cs:Получить свойство с отражением

void itemListView_SelectionChanged(object sender, SelectionChangedEventArgs e) 
     { 
      if (this.UsingLogicalPageNavigation()) 
      { 
       this.navigationHelper.GoBackCommand.RaiseCanExecuteChanged(); 
      } 

      // Here is the object which properties i am trying to get: 
      var mySelectedItem = e.AddedItems[0]; 

      //Here I would like to acess the properties 

     } 

Im пытается использовать отражение, чтобы получить propertes от mySelected пункта. пытался что-то вроде:

PropertyInfo property = GetType().GetProperty(propertyName) <--Cant resolve GetProperty() 

и

object value = propertyInfo.GetValue(mySelectedItem);<--Cant resolve PropertyInfo 

ли не possibe использовать refelctionin этого сценария?

+0

Не работает 'mySelectedItem.MyProperty'? –

+0

Извините, что я не смог понять, что ур пытается передать, но я могу дать вам рабочий пример отражения, если вам нужно – Dhaval

+0

MyselectedItem содержит объект, который передается в этот метод с параметром e. Я хотел бы получить значения из двух своих свойств, чтобы присвоить их другому var. – Wranglerino

ответ

1

Вам не нужно отражать то, что вы хотите.

Вы можете получить доступ к свойствам ваших объектов, когда вы нанесете их на нужный объект.

void itemListView_SelectionChanged(object sender, SelectionChangedEventArgs e) 
    { 
     if (this.UsingLogicalPageNavigation()) 
     { 
      this.navigationHelper.GoBackCommand.RaiseCanExecuteChanged(); 
     } 
     var mySelectedItem = e.AddedItems[0]; 

     MyObject myObject = (MyObject)mySelectedItem; 

     // Now you can access your property as follows: myObject.MyProperty; 

    } 
+0

Это именно то, что мне нужно! И это заняло только 4 downvotes! – Wranglerino

+1

@DirkWrangler Я думаю, это потому, что вы не задавали очень хороший вопрос. В следующий раз добавьте картинку большего размера :) –

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