2012-06-18 22 views
6

मैं नियंत्रण के साथ मुख्य विंडो सीमा को ओवरलैप करने का प्रभाव प्राप्त करने का प्रयास कर रहा हूं। शब्दों में इसे समझाना मुश्किल है, जो शायद यह भी हो सकता है कि मुझे यह कैसे करना है या यह संभव है कि जानकारी कैसे प्राप्त हो रही है।मुख्य विंडो सीमाओं के बाहर/बाहर wpf सामग्री प्रदर्शित करना

नीचे प्रभाव का एक उदाहरण है जिसे मैं (डिजाइनर से) प्राप्त करने की कोशिश कर रहा हूं, जहां "नोट" ऑब्जेक्ट मुख्य विंडो की सीमाओं के बाहर तैरते हैं।

Example 1

हालांकि प्रभाव मैं कार्यावधि में मिलता है यह (नीचे), आंतरिक नियंत्रण मुख्य विंडो की सीमा से काटा जाता है।

Example 2

कोई मुझे बता सकते हैं अगर यह संभव (या नहीं) है, और अगर यह मैं कैसे इस प्रभाव को प्राप्त कर सकता है के बारे में हो सकता है कुछ सुझाव है।

+1

आप एक 'Popup' का उपयोग कर विचार किया है? –

+0

धन्यवाद, मुझे लगता है कि पॉपअप नियंत्रण –

उत्तर

1

मुझे नहीं लगता कि खिड़की की सीमाओं के बाहर खींचने का कोई तरीका है। हालांकि, आप नोट नियंत्रण के लिए बस एक नई विंडो बना सकते हैं और इसे अपनी मुख्य विंडो में संरेखित कर सकते हैं।

+0

दूसरा उत्तर इस बात को अस्वीकार करता है। – ANeves

+0

पॉपअप नियंत्रण वास्तव में आंतरिक रूप से एक नई विंडो बनाता है, जैसा कि मैंने उत्तर में सुझाव दिया था। – Michael

+0

यह सच है। हो सकता है कि आप पॉपअप का उपयोग करने के तरीके के बारे में एक संक्षिप्त स्पष्टीकरण के साथ अपने उत्तर का विस्तार कर सकें, वैसे ही एक नई विंडो भी बनायेगी। – ANeves

0

क्या आपने ClipToBounds संपत्ति का प्रयास किया था?

+0

जाने का तरीका है डिफ़ॉल्ट रूप से यह बंद है। – MasterMastic

2

खिड़की की सामग्री हमेशा क्लिप हो जाएगी। तो मूल रूप से यहां जाने का केवल एक ही रास्ता है। आप अपनी फ्लोटिंग सामग्री के लिए एक नई पारदर्शी विंडो बनाकर वांछित प्रभाव प्राप्त कर सकते हैं और फिर मैन्युअल रूप से मुख्य विंडो के स्थान के आधार पर फ़्लोटिंग सामग्री विंडो की स्थिति सेट और अपडेट कर सकते हैं।

अब तक मैं इसी तरह की कार्यक्षमता के लिए AvalonDock का उपयोग कर रहा हूं। आप इसे आजमाइए सकती है ...

5
वहाँ

एक नियंत्रण है कि इस तरह के एक व्यवहार को प्राप्त कर सकते है आप एक पॉपअप नियंत्रण
जाँच की कोशिश की है यह पता http://msdn.microsoft.com/en-us/library/bb613596(v=vs.110).aspx

मैं इतना

करने के लिए एक उदाहरण है
<Window x:Class="MainWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Title="MainWindow" Height="350" Width="525"> 
<Grid> 
    <ToggleButton x:Name="MainButton" Content="Show popup" VerticalAlignment="Top" HorizontalAlignment="Right"/> 
    <Popup PlacementTarget="{Binding ElementName=MainButton}" Placement="Bottom" AllowsTransparency="True" IsOpen="{Binding ElementName=MainButton, Path=IsChecked}"> 
     <Grid> 
      <Border BorderBrush="Orange" BorderThickness="1" Background="Yellow"/> 
      <TextBlock Text="Lorem Ipsum is simply dummy text of the printing and typesetting industry"/> 
     </Grid>    
    </Popup> 
</Grid>