2009-08-11 30 views

答えて

114

Windowに置き、Window.ShowDialogに電話してください。

+9

また、SizeToContent = SizeToContent.WidthAndheightとResizeMode = ResizeMode.NoResizeを設定すると、ユーザーコントロールがサイズを定義できるようになりました。 –

+2

'this.Close()'関数をこのUserControlダイアログにどのように使うことができますか? –

+1

プライベートvoid btnClose_Click(オブジェクト送信者、RoutedEventArgs e) { \t var parent = this.Parent as Window; \t(!親= null)の場合は \t { \t \t parent.DialogResult =はtrue。 \t \t parent.Close(); \t} } –

2

私が知る限り、あなたはそれを行うことはできません。それをダイアログに表示したい場合は、それは完璧です。UserControlだけを含む新しいウィンドウを作成し、そのウィンドウのインスタンスを作成した後にShowDialog()を呼び出します。

EDIT:メソッドShowDialogメソッドが含まれていません UserControlクラスは、だから何あなたがやろうとしているのは実際には不可能です。

これは、しかし、次のとおりです。

private void Button_Click(object sender, RoutedEventArgs e){ 
    new ContainerWindow().ShowDialog(); 
} 
-1

'sixlettervariables' によって答えはなるように変更された場合、それは

private void button1_Click (object sender, RoutedEventArgs e)     
{ 
    Window window = new Window 
    { 
     Title = "My User Control Dialog", 
     Content = new UserControl (), 
     Height = 200, // just added to have a smaller control (Window) 
     Width = 240 
    }; 

    window.ShowDialog (); 
} 
+9

あなたは 'Background = Brushes.Purple'を忘れました。それなしでは動作しません。 –

7
Window window = new Window 
      { 
       Title = "My User Control Dialog", 
       Content = new OpenDialog(), 
       SizeToContent = SizeToContent.WidthAndHeight, 
       ResizeMode = ResizeMode.NoResize 
      }; 
      window.ShowDialog(); 

を働くことは、私にとって魔法のように働いています。 モーダルダイアログとして作成できますか?


ANSは:)多分UserControlInstance.ShowDialog(ような単純な、それ自身のモーダルダイアログとしてそれを作る... ...

+0

SizeToContentは非常に便利です。ありがとう。 – honzakuzel1989

1
namespace System.Window.Form 
{ 
    public static class Ext 
    { 
     public static DialogResult ShowDialog(this UserControl @this, string title) 
     { 
      Window wind = new Window() { Title = title, Content = @this }; 
      return wind.ShowDialog(); 
     } 
    } 
} 

それを利用するにShowDialog。 よりカスタマイズされた実装は、Windowクラスを拡張し、デザイナーとコードを使用してカスタマイズして機能を得ることです。

+0

良い例、WPF(System.Windows.Window.ShowDialog())の場合戻り値の型はboolでなければなりませんか? (Nullableタイプ) –

関連する問題