SORU
18 HAZİRAN 2009, PERŞEMBE


ElementName Değiştirmek içinde Switching Bağlayıcı

Başkası ElementName ile Bağlamaları doğru ContextMenu nesneleri içinde bulunan 2 ** nesneleri gidermek fark vardır? Bu örnek kontrol edin:

<Window x:Class="EmptyWPF.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" Height="300" Width="300"
    x:Name="window">
    <Grid x:Name="grid" Background="Wheat">
    	<Grid.ContextMenu>
    		<ContextMenu x:Name="menu">
    			<MenuItem x:Name="menuItem" Header="Window" Tag="{Binding ElementName=window}" Click="MenuItem_Click"/>
    			<MenuItem Header="Grid" Tag="{Binding ElementName=grid}" Click="MenuItem_Click"/>
    			<MenuItem Header="Menu" Tag="{Binding ElementName=menu}" Click="MenuItem_Click"/>
    			<MenuItem Header="Menu Item" Tag="{Binding ElementName=menuItem}" Click="MenuItem_Click"/>
    		</ContextMenu>
    	</Grid.ContextMenu>
    	<Button Content="Menu" 
    			HorizontalAlignment="Center" VerticalAlignment="Center" 
    			Click="MenuItem_Click" Tag="{Binding ElementName=menu}"/>
    	<Menu HorizontalAlignment="Center" VerticalAlignment="Bottom">
    		<MenuItem x:Name="anotherMenuItem" Header="Window" Tag="{Binding ElementName=window}" Click="MenuItem_Click"/>
    		<MenuItem Header="Grid" Tag="{Binding ElementName=grid}" Click="MenuItem_Click"/>
    		<MenuItem Header="Menu" Tag="{Binding ElementName=menu}" Click="MenuItem_Click"/>
    		<MenuItem Header="Menu Item" Tag="{Binding ElementName=anotherMenuItem}" Click="MenuItem_Click"/>
    	</Menu>
    </Grid>
</Window>

Bağlamaları tüm bağlantıları Değiştirmek içinde yer alan haricinde harika bir iş. Çalışma sırasında Çıkış penceresi için bir hata basıyorlar.

Herhangi bir çalışma alternatif yollarını biliyor? Burada neler oluyor?

CEVAP
30 HAZİRAN 2009, Salı


Çok daha basit bir çözüm buldum.

Arkasında UserControl için: kod

NameScope.SetNameScope(contextMenu, NameScope.GetNameScope(this));

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Matthew Pearce

    Matthew Pear

    9 AĞUSTOS 2009
  • PaulGBelliveau

    PaulGBellive

    5 Mart 2009
  • Viktorija A.

    Viktorija A.

    28 Mart 2009