ウィンドウページがあり、ウィンドウページからボタンをクリックした後に> UserControlページが表示されます。内部UserControlの後に<Popup Name="MyPopup">
ポップアップがあります。ポップアップは常にトップの問題にとどまります。どうすればこの問題を解決できますか?Wpf - ボタンをクリックするとUsercontrol内でポップアップの問題が発生する
私は、それから、これはポップアップでユーザーコントロールのページで、
<UserControl x:Class="WpfApplication1.UC_UserMgmt"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="400" Background="Blue">
<Grid>
<Grid Name="g1">
<Button Content="usercontrol_ClickMe" Height="50" Width="150" Margin="150,0,0,250" Click="btnShow_Click"></Button>
</Grid>
<Popup Name="MyPopup" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"
HorizontalOffset="-150" Placement="Mouse" StaysOpen="{Binding ElementName=g1,Path=IsMouseOver}"
VerticalOffset="20"
AllowsTransparency="True">
<StackPanel>
<Border BorderBrush="Black" Background="Brown" BorderThickness="1" Width="300" Height="100" >
<Grid>
<TextBox x:Name="txtUName" HorizontalAlignment="Center" Height="28" Width="223" TextWrapping="Wrap" VerticalAlignment="Top" Margin="10,26,64.6,0" />
<Button Content="Open" Height="30" Width="50" Margin="238,24,9.6,43.6" Click="btnOpen_Click"/>
</Grid>
</Border>
</StackPanel>
</Popup>
</Grid>
</UserControl>
private void btnUserManage_Click(object sender, RoutedEventArgs e)
{
UC_UserMgmt mw = new UC_UserMgmt();
cont2.Content = mw;
cont2.Visibility = Visibility.Visible;
}
をウィンドウのページの後ろ
<Window x:Class="WpfApplication1.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" Background="Green">
<Grid >
<Button Height="50" Width="100" Content="window_ClickMe" Click="btnUserManage_Click"></Button>
<ContentControl Name="cont2" Visibility="Hidden">
</ContentControl>
</Grid>
</Window>
とコードを試してみました
、これはユーザーコントロールのコードビハインドページで、
private void btnOpen_Click(object sender, EventArgs e)
{
MyPopup.IsOpen = true;
System.Windows.Forms.OpenFileDialog fDialog = new System.Windows.Forms.OpenFileDialog();
fDialog.Title = "Select file to be zip";
if (fDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
txtUName.Text = fDialog.FileName.ToString();
}
}
private void btnShow_Click(object sender, EventArgs e)
{
MyPopup.IsOpen = true;
}
問題は、ユーザーが[開く]ボタンをクリックしたときに、ある、openFileDialogが開いていると、それが開かれたときに、ポップアップが消えているようです。どうすればこの問題を解決できますか?
卿、恐れ入りますが、ユーザーコントロールでこの機能を追加!私はあなたの2番目のアドバイスから明確なアイデアを得ることができません。いくつかの例で説明していただけますか?私は別の問題に直面しています。すなわち、私はポップアップの位置を集中することができません。それは人口配置の後にその都度変更されています。 – AbhiJA
@AbhiJAポップアップの位置が毎回変わる理由は、 'Placement =" Mouse ""を 'Placement =" Bottom "に変更するか、そのような静的でデザインに合ったオプションを変更したからです。位置が親以外のものと相対的であるようにするには、 'PlacementTarget'を使います。コードサンプルについては、私は数時間を与える必要があります –
確かに!ありがとう。私はあなたの答えを待つつもりも私の側にもお試しください。もう一度ありがとうございます。 – AbhiJA