ठीक है, यह एक अच्छा आश्चर्य था (इसे कई बार लिखने के बाद) यह पता लगाने के लिए कि System.Windows.Controls namepace में पहले से ही BooleanToVisibilityConverter मौजूद है।
संभवत: ऐसे और अधिक छिपे हुए समय बचाने वाले हैं।
किसी को कुछ मिला?
जवाबों:
मैंने ऑब्जेक्ट ब्राउज़र का उपयोग करके एक त्वरित ट्रैवेल किया और यही मेरे पास है।
से व्युत्पन्न IValueConverter
:
System.Windows.Controls.AlternationConverter
System.Windows.Controls.BooleanToVisibilityConverter
System.Windows.Documents.ZoomPercentageConverter
System.Windows.Navigation.JournalEntryListConverter
Xceed.Wpf.DataGrid.Converters.CurrencyConverter
Xceed.Wpf.DataGrid.Converters.DateTimeToStringConverter
Xceed.Wpf.DataGrid.Converters.GreaterThanZeroConverter
Xceed.Wpf.DataGrid.Converters.IndexToOddConverter
Xceed.Wpf.DataGrid.Converters.IntAdditionConverter
Xceed.Wpf.DataGrid.Converters.InverseBooleanConverter
Xceed.Wpf.DataGrid.Converters.LevelToOpacityConverter
Xceed.Wpf.DataGrid.Converters.MultimodalResultConverter
Xceed.Wpf.DataGrid.Converters.NegativeDoubleConverter
Xceed.Wpf.DataGrid.Converters.NullToBooleanConverter
Xceed.Wpf.DataGrid.Converters.SourceDataConverter
Xceed.Wpf.DataGrid.Converters.StringFormatConverter
Xceed.Wpf.DataGrid.Converters.ThicknessConverter
Xceed.Wpf.DataGrid.Converters.TypeToBooleanConverter
Xceed.Wpf.DataGrid.Converters.TypeToVisibilityConverter
Xceed.Wpf.DataGrid.Converters.ValueToMaskedTextConverter
से व्युत्पन्न IMultiValueConverter
:
System.Windows.Controls.BorderGapMaskConverter
System.Windows.Navigation.JournalEntryUnifiedViewConverter
System.Windows.Controls.MenuScrollingVisibilityConverter
Microsoft.Windows.Themes.ProgressBarBrushConverter
Microsoft.Windows.Themes.ProgressBarHighlightConverter
ध्यान दें Xceed वाले (कोई कनेक्शन नहीं) उनके DataGrid के साथ मुफ्त उपलब्ध हैं। के रूप में अच्छी तरह से उन के रूप में वहाँ चारों ओर कुछ चालाक सामान डिबगिंग कनवर्टर की तरह है । मैंने पिछले IValueConverter का भी उपयोग किया है और मुझे यकीन है कि कुछ और लैंबडा फंक्शन की अच्छाई भी मिलेगी।
3.5 SP1 से पहले, स्ट्रिंग प्रारूपण के लिए एक IValueConverter की आवश्यकता थी। अब, आप ऐसा करने के लिए बाइंडिंग पर StringFormat संपत्ति का उपयोग कर सकते हैं ।
MSDN पृष्ठ से:
<DataTemplate>
<TextBlock>
<TextBlock.Text>
<MultiBinding StringFormat="{}{0} -- Now only {1:C}!">
<Binding Path="Description"/>
<Binding Path="Price"/>
</MultiBinding>
</TextBlock.Text>
</TextBlock>
</DataTemplate>