2010-08-24 23 views
11

में प्राप्त करें I ListBoxItem पर जब यह सूची बॉक्स से चुना गया है, तो नियंत्रण टेम्पलेट को बदलने का प्रयास कर रहा हूं। ऐसा करने के लिए, मैं ListBox से चयनित ListBoxItem प्राप्त करने जा रहा था, और उस पर नियंत्रण टेम्पलेट सेट करें। मैं ऐसा कैसे कर पाऊंगा? मैंने कोशिश की है, SelectedItem और जो ListBoxItem के भीतर बाध्य ऑब्जेक्ट देता है।ListBoxItem को ListBox

उत्तर

20

आप ItemContainerGenerator का उपयोग करके बाध्य आइटम से आइटम कंटेनर को पुनः प्राप्त कर सकते हैं:

object selectedItem = listBox.SelectedItem; 
ListBoxItem selectedListBoxItem = listBox.ItemContainerGenerator.ContainerFromItem(selectedItem) as ListBoxItem; 
0

अब आप इस के साथ यह कर सकते हैं:

ListBoxItem container = listBox.ContainerFromIndex(listBox.SelectedIndex) as ListBoxItem; 

ItemContainerGenerator.ContainerFromItem() समारोह obsolete की तरह अब लगता है।

आप ListBox आइटम खाका निर्धारित किया है, तो आप

UIElement item= container.ContentTemplateRoot; 
से प्राप्त कर सकते हैं
संबंधित मुद्दे