我有兩個xaml文件MainWindow.xaml和其他用戶控件WorkDetail.xaml文件。 MainWindow.xaml文件有一個文本框,按鈕,列表框和對WorkDetail.xaml(摺疊的用戶控件)的引用。無論何時用戶輸入任何文本,當單擊添加按鈕時,它都會添加到列表框中。當雙擊列表框中的任何項目時,WorkDetail.xaml的可見性設置爲可見並顯示。在WorkDetail.xaml(用戶控件)中,它具有文本塊和按鈕。文本塊顯示所選項目的文本,關閉按鈕將WorkDetail窗口的可見性設置爲摺疊狀態。現在,我試圖在WorkDetail.xaml變爲可見並摺疊時對其進行動畫製作。當雙擊列表框中的任何項目並將WorkDetail.xaml可見性設置爲可見時,我想創建一個在MainWindow上從右向左移動WorkDetail.xaml窗口的動畫。當單擊WorkDetail.xaml文件中的關閉按鈕並摺疊WorkDetail.xaml文件時,我想從MainWindow中將WorkDetail.xaml文件從左向右滑動。當用戶控件顯示並摺疊時添加動畫在Wpf
這裏是截圖: alt text http://i48.tinypic.com/13znac5.jpg
MainWindow.xaml代碼:
<Window...>
<Grid Background="Black" >
<TextBox x:Name="enteredWork" Height="39" Margin="44,48,49,0" TextWrapping="Wrap" VerticalAlignment="Top"/>
<ListBox x:Name="workListBox" Margin="26,155,38,45" FontSize="29.333" MouseDoubleClick="workListBox_MouseDoubleClick"/>
<Button x:Name="addWork" Content="Add" Height="34" Margin="71,103,120,0" VerticalAlignment="Top" Click="Button_Click"/>
<TestWpf:WorkDetail x:Name="WorkDetail" Visibility="Collapsed"/>
</Grid>
</Window>
MainWindow.xaml.cs類代碼:
namespace TestWpf
{
public partial class MainWindow : Window
{
public MainWindow()
{
this.InitializeComponent();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
workListBox.Items.Add(enteredWork.Text);
}
private void workListBox_MouseDoubleClick(object sender, MouseButtonEventArgs e)
{
WorkDetail.workTextBlk.Text = (string)workListBox.SelectedItem;
WorkDetail.Visibility = Visibility.Visible;
}
}
}
WorkDetail.xaml代碼:
<UserControl ..>
<Grid Background="#FFD2CFCF">
<TextBlock x:Name="workTextBlk" Height="154" Margin="33,50,49,0" TextWrapping="Wrap" VerticalAlignment="Top" FontSize="29.333" Background="#FFF13939"/>
<Button x:Name="btnClose" Content="Close" Height="62" Margin="70,0,94,87" VerticalAlignment="Bottom" Click="btnClose_Click"/>
</Grid>
</UserControl>
個
WorkDetail.xaml.cs類代碼:
namespace TestWpf
{
public partial class WorkDetail : UserControl
{
public WorkDetail()
{
this.InitializeComponent();
}
private void btnClose_Click(object sender, System.Windows.RoutedEventArgs e)
{
Visibility = Visibility.Collapsed;
}
}
}
誰能告訴我怎樣才能做到這一點?