के बीच क्या अंतर है WPF के ListBox और ListView के बीच क्या अंतर है? मुझे उनकी संपत्तियों में कोई महत्वपूर्ण अंतर नहीं मिल रहा है। क्या अलग-अलग उपयोग हैं?ListBox और ListView
उत्तर
ए ListView
मूल रूप से ListBox
(और इससे प्राप्त विरासत) की तरह है, लेकिन इसमें View
संपत्ति भी है। यह संपत्ति आपको वस्तुओं को प्रदर्शित करने का एक पूर्वनिर्धारित तरीका निर्दिष्ट करने की अनुमति देती है। बीसीएल में एकमात्र पूर्वनिर्धारित दृश्य GridView
है, लेकिन आप आसानी से create your own कर सकते हैं।
एक और अंतर यह डिफ़ॉल्ट चयन विधा है: यह एक ListView
एक ListView
आप इसके लिए views
का एक सेट को परिभाषित करते हैं के लिए एक ListBox
के लिए Single
, लेकिन Extended
है और आप एक देशी तरीका (WPF
binding
समर्थन) के लिए देता है परिभाषित views
का उपयोग कर ListView
के प्रदर्शन को नियंत्रित करें।
उदाहरण:
XAML
<ListView ItemsSource="{Binding list}" Name="listv" MouseEnter="listv_MouseEnter" MouseLeave="listv_MouseLeave">
<ListView.Resources>
<GridView x:Key="one">
<GridViewColumn Header="ID" >
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding id}" />
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Header="Name" >
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding name}" />
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
<GridView x:Key="two">
<GridViewColumn Header="Name" >
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding name}" />
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.Resources>
<ListView.Style>
<Style TargetType="ListView">
<Style.Triggers>
<DataTrigger Binding="{Binding ViewType}" Value="1">
<Setter Property="View" Value="{StaticResource one}" />
</DataTrigger>
</Style.Triggers>
<Setter Property="View" Value="{StaticResource two}" />
</Style>
</ListView.Style>
Code Behind:
private int viewType;
public int ViewType
{
get { return viewType; }
set { viewType = value;
UpdateProperty("ViewType");
}
}
private void listv_MouseEnter(object sender, MouseEventArgs e)
{
ViewType = 1;
}
private void listv_MouseLeave(object sender, MouseEventArgs e)
{
ViewType = 2;
}
उत्पादन:
सामान्य दृश्य: देखें 2 ऊपर XAML
माउस ले जाएँ इसमें देखें: देखें 1 ऊपर XAML
आप एक
ListBox
में ऊपर प्राप्त करने का प्रयास करते हैं, तो शायद आप के लिएListBox
कीControlTempalate
/ItemTemplate
एक बहुत अधिक कोड लिखने पहुंच जाएंगे।
सूचीदृश्य सूची बॉक्स नियंत्रण से प्राप्त होता है। एक सबसे महत्वपूर्ण अंतर सूचीदृश्य डिफ़ॉल्ट रूप से विस्तारित चयन मोड का उपयोग करता है। लिस्टव्यू व्यू नामक एक संपत्ति भी जोड़ती है जो आपको कस्टम आइटम्स पैनेल की तुलना में एक अमीर तरीके से दृश्य को अनुकूलित करने में सक्षम बनाती है। ग्रिडव्यू के साथ सूचीदृश्य का एक वास्तविक जीवन उदाहरण फ़ाइल एक्सप्लोरर का विवरण दृश्य है। ग्रिड व्यू के साथ लिस्टव्यूव एक कम शक्तिशाली डेटा ग्रिड है। डाटाग्रिड नियंत्रण सूची के परिचय के बाद इसका महत्व खो गया।
- 1. ListBox बनाम ListView - डेटा बाध्यकारी
- 2. ListBox
- 3. कई दृश्य उपयोग के लिए ListView बनाम ListBox
- 4. ListBox और UpdateTarget
- 5. ListBox
- 6. ListBox
- 7. ListView नियंत्रण
- 8. WPF contextmenu और ListView
- 9. Listview और CustomAdapter SimpleCursorAdapter
- 10. ListBox सभी
- 11. ListBox डेटासोर्स
- 12. WPF ListBox
- 13. सी # - ListBox
- 14. ListBox मार्जिन विंडोज 7 और विंडोज 8
- 15. ListView
- 16. ListView
- 17. ListView
- 18. ListView
- 19. ListView
- 20. ListView
- 21. ListView
- 22. ListView
- 23. ListView
- 24. ListView
- 25. ListView
- 26. ListView
- 27. ListView
- 28. ListView
- 29. ListView
- 30. ListView
बीसीएल द्वारा आपका क्या मतलब है? धन्यवाद। –
@ डैनियल अरमानस्को, बीसीएल = [बेस क्लास लाइब्रेरी] (http://en.wikipedia.org/wiki/Base_Class_Library) –