This article is currently in the process of being translated into Hindi (~97% done).
Control ToolTips
टूलटिप्स, इन्फोटिप्स या संकेत - विभिन्न नाम, लेकिन अवधारणा एक ही रहती है: माउस मँडरा कर एक विशिष्ट Control या लिंक के बारे में अतिरिक्त जानकारी प्राप्त करने की क्षमता। WPF स्पष्ट रूप से इस अवधारणा का समर्थन करता है, और FrameworkElementक्लास पर पाई गई ToolTip Property का उपयोग करके, जो लगभग किसी भी WPF Controls से विरासत में मिला है।
Control के लिए ToolTip को निर्दिष्ट करना बहुत आसान है, जैसा कि आप इस पहले और बहुत बुनियादी उदाहरण में देखेंगे:
<Window x:Class="WpfTutorialSamples.Control_concepts.ToolTipsSimpleSample"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="ToolTipsSimpleSample" Height="150" Width="400">
<Grid VerticalAlignment="Center" HorizontalAlignment="Center">
<Button ToolTip="Click here and something will happen!">Click here!</Button>
</Grid>
</Window>
जैसा कि आप स्क्रीनशॉट पर देख सकते हैं, यह बटन के ऊपर माउस हो जाने पर, निर्दिष्ट string के साथ एक फ्लोटिंग बॉक्स में परिणाम प्रदर्शित करता है। ऐसा सबसे अधिक UI Framework प्रदान करते हैं- एक text string का प्रदर्शन और अधिक कुछ नहीं।
हालांकि, WPF में, ToolTip Property वास्तव में एक string type नहीं है, बल्कि एक object type है, जिसका अर्थ है कि हम वहां जो कुछ भी चाहते हैं, डाल सकते हैं। यह कुछ बहुत अच्छी संभावनाएं खोलता है, जहां हम उपयोगकर्ता को अधिक समृद्ध और अधिक उपयोगी टूलटिप्स प्रदान कर सकते हैं। उदाहरण के लिए, इस उदाहरण पर विचार करें और इसकी तुलना पहले वाले से करें:
<Window x:Class="WpfTutorialSamples.Control_concepts.ToolTipsAdvancedSample"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="ToolTipsAdvancedSample" Height="200" Width="400" UseLayoutRounding="True">
<DockPanel>
<ToolBar DockPanel.Dock="Top">
<Button ToolTip="Create a new file">
<Button.Content>
<Image Source="/WpfTutorialSamples;component/Images/page_white.png" Width="16" Height="16" />
</Button.Content>
</Button>
<Button>
<Button.Content>
<Image Source="/WpfTutorialSamples;component/Images/folder.png" Width="16" Height="16" />
</Button.Content>
<Button.ToolTip>
<StackPanel>
<TextBlock FontWeight="Bold" FontSize="14" Margin="0,0,0,5">Open file</TextBlock>
<TextBlock>
Search your computer or local network
<LineBreak />
for a file and open it for editing.
</TextBlock>
<Border BorderBrush="Silver" BorderThickness="0,1,0,0" Margin="0,8" />
<WrapPanel>
<Image Source="/WpfTutorialSamples;component/Images/help.png" Margin="0,0,5,0" />
<TextBlock FontStyle="Italic">Press F1 for more help</TextBlock>
</WrapPanel>
</StackPanel>
</Button.ToolTip>
</Button>
</ToolBar>
<TextBox>
Editor area...
</TextBox>
</DockPanel>
</Window>
ध्यान दें कि यह उदाहरण पहले बटन के लिए एक सरल स्ट्रिंग टूलटिप का उपयोग करता है और फिर दूसरे बटन के लिए बहुत अधिक उन्नत है। उन्नत मामले में, हम एक पैनल का उपयोग Root control के रूप में किए हैं और फिर Control को जैसा हम चाहें जोड़ने के लिए स्वतंत्र हैं । परिणाम बहुत अच्छा है, हेडर के साथ, विवरण text और एक संकेत है कि आप help आइकन सहित अधिक help के लिए F1 दबा सकते हैं।
Advanced options
ToolTip Service Class दिलचस्प Properties का एक समूह होता है जो आपके टूलटिप्स के व्यवहार को प्रभावित करता है। आप उन्हें सीधे Controls पर सेट करते हैं जिनके पास ToolTip होता है, उदाहरण के लिए यहाँ, एक टूलटिप के ShowDurationproperty का उपयोग दिखाया गया है कि कैसे हम समय बढ़ाते हैं(हम इसे 5.000 मिलीसेकंड या 5 सेकंड पर सेट करते हैं):
<Button ToolTip="Create a new file" ToolTipService.ShowDuration="5000" Content="Open" />
आप HasDropShadow property का उपयोग करके, यह भी नियंत्रित कर सकते हैं कि पॉपअप में छाया होना चाहिए या नहीं, या ShowOnDisabled property का उपयोग करके disabled Controls के लिए टूलटिप्स होना चाहिए या नहीं। कई अन्य दिलचस्प गुण हैं, इसलिए पूरी सूची के लिए कृपया दस्तावेज़ देखें: http://msdn.microsoft.com/en-us/library/system.windows.controls.tooltipservice.aspx
सारांश
Tooltips उपयोगकर्ता के लिए एक बड़ी मदद हो सकती है, और WPF में, वे उपयोग करने में आसान और बेहद लचीले हैं। इस तथ्य को जान ले कि आप अपने application में उपयोगकर्ता के अधिक इनलाइन मदद के लिए टूलटिप का डिज़ाइन और सामग्री,ToolTipService class के property के साथ पूरी तरह से नियंत्रित कर सकते हैं।