2011-10-13 17 views
5

पर WPF शो पॉपअप मुझे निम्न कार्यक्षमता चाहिए: मेरे पास डेटाग्रिड है, और जब मैं अपने माउस पॉइंटर के साथ सेल पर जाता हूं, तो मैं अपने प्रोग्राम को जानकारी के साथ पॉपअप स्क्रीन दिखाने के लिए कहूंगा। जब मेरा माउस सेल छोड़ देता है, तो जाहिर है कि मैं पॉपअप गायब होना चाहता हूं। मुझे आशा है कि मैं इसे केवल एक्सएएमएल कोड में कर सकता हूं।डेटाग्रिड सेल माउसओवर

<Popup x:Name="_popup_agreementDetails" Placement="Center" AllowsTransparency="True" 
       HorizontalAlignment="Center" VerticalAlignment="Center" Grid.Column="2" Margin="46,333,102,172" Grid.Row="2" IsOpen="{Binding IsChecked, ElementName=button}"> 
    <my:UC1001_AgreementDetails_View Background="#FFF" Opacity="0.88" /> 
</Popup> 

आप देख सकते हैं, पॉपअप एक उपयोगकर्ता नियंत्रण मैंने बनाया पता चलता है:

यह XAML में मेरी पॉपअप है। यह मेरी datagrid है:

<DataGrid x:Name="employeeGrid" Height="250" Margin="25,0,10,0" ColumnHeaderStyle="{DynamicResource CustomColumnHeader}"> 
    <DataGrid.Columns> 
     <DataGridTextColumn Header="Naam" Width="150"/> 
     <DataGridTextColumn Header="Januari" Width="*"/> 
     <DataGridTextColumn Header="Februari" Width="*"/> 
     <DataGridTextColumn Header="Maart" Width="*"/> 
     <DataGridTextColumn Header="April" Width="*"/> 
     <DataGridTextColumn Header="Mei" Width="*"/> 
     <DataGridTextColumn Header="Juni" Width="*"/> 
     <DataGridTextColumn Header="Juli" Width="*"/> 
     <DataGridTextColumn Header="Augustus" Width="*"/> 
     <DataGridTextColumn Header="September" Width="*"/> 
     <DataGridTextColumn Header="Oktober" Width="*"/> 
     <DataGridTextColumn Header="November" Width="*"/> 
     <DataGridTextColumn Header="December" Width="*"/> 
    </DataGrid.Columns> 
</DataGrid> 

मैं चलाता और सामान पॉपअप को दिखाने के लिए के बारे में कुछ सामान पढ़ा है, लेकिन मैं कैसे एक datagrid सेल पर इसे लागू करने के पता नहीं है। पॉपअप हर सेल पर दिखाना चाहिए। पॉपअप पर दिखाई गई जानकारी आच्छादित सेल पर निर्भर करती है।

क्या किसी को पता है कि एक्सएएमएल में यह कैसे करना है?

उत्तर

7

तुमने कहा था ....

जब मैं एक सेल पर मेरे माउस सूचक के साथ जाओ, मैं करने के लिए अपने कार्यक्रम की जानकारी के साथ एक पॉपअप स्क्रीन में दिखाई देगा। जब मेरा माउस सेल छोड़ देता है, स्पष्ट रूप से मैं पॉपअप गायब होना चाहता हूं।

मुझे लगता है कि उस मामले में भी DataGridCell.ToolTip पर्याप्त होना चाहिए। टूलटिप्स सामग्री के किसी भी प्रकार के दिखा सकते हैं .... देखें इस fancy tooltip ट्यूटोरियल ...

और यह सब datagrid कोशिकाओं को टूलटिप की स्थापना ... इस कोड का उपयोग करने के लिए ...

<DataGrid ... > 
     <DataGrid.CellStyle> 
      <Style> 
      <Setter Property="DataGridCell.ToolTip"> 
       <Setter.Value> 
        <my:UC1001_AgreementDetails_View 
          Background="#FFF" 
          Opacity="0.88" /> 
       </Setter.Value> 
       </Setter> 
      </Style> 
     </DataGrid.CellStyle> 
     ... 
    </DataGrid> 

आशा है कि मदद करता है,

+0

धन्यवाद! मैं WPF के लिए थोडा नया हूं इसलिए मुझे नहीं पता था कि टूलटिप किसी भी प्रकार की सामग्री रख सकता है। यह वही है जो मुझे चाहिए और ट्रिगर्स और पॉपअप के साथ काम करना आसान लग रहा है। –

संबंधित मुद्दे