2011-06-17 33 views
1

在.net 3.5,我們以前可以做類似定位的窗口:是否有可能使用XAML風格WPF/.NET 4.0

<Style.Triggers> 
<DataTrigger Binding="{Binding Path=SOMEPROPERTY}" Value="False"> 
    <Setter Property="Left" Value="100" /> 
    <Setter Property="Top" Value="50" /> 
</DataTrigger> 
</Style.Triggers> 

,它會在座標定位窗口給出。

在.NET 4.0 Left和Top不能再通過xaml風格進行調整。

除了將這一切都轉移到C#中,有沒有人知道可用於.Net 4.0的解決方案?

+0

如果你用什麼'Window.Left'和'Window.Top'呢? – BoltClock

+0

同樣的效果。它在加載時設置一次位置,然後再不移動它。 – Malcolm

回答

1

既然你不應該使用風格作爲文檔本身說明你沒有太多的選擇,你必須以不同的方式做。

一兩件事你可以做的是使用交互從Blend SDK,例如:

xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity" 
xmlns:ei="http://schemas.microsoft.com/expression/2010/interactions" 
<!-- Place this anywhere inside the Window as it is attached --> 
<i:Interaction.Triggers> 
    <ei:DataTrigger Binding="{Binding TestString}" Value="42"> 
     <ei:ChangePropertyAction PropertyName="Top" Value="0" /> 
     <ei:ChangePropertyAction PropertyName="Left" Value="0" /> 
    </ei:DataTrigger> 
</i:Interaction.Triggers>