ユーザ用ツール

サイト用ツール


it技術:dotnet:wpf開発

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
it技術:dotnet:wpf開発 [2017/12/06 18:05] yajuadminit技術:dotnet:wpf開発 [2018/01/17 18:19] (現在) – [Shownイベント] yajuadmin
行 91: 行 91:
 </code> </code>
  
-<code csharp>+<code csharp sample>
 private void watcher_Changed(Object source, FileSystemEventArgs e) private void watcher_Changed(Object source, FileSystemEventArgs e)
 { {
行 106: 行 106:
 </code> </code>
  
 +==== 画面表示時の例外エラー ====
 +例外エラー「'Window が閉じた後で、Visibility の設定や、Show、ShowDialog、およびWindowInteropHelper.EnsureHandl の呼び出しを行うことはできません。」
 +
 +フォームインスタンスを再利用するとでる。
 +  * 他のフォームをnewする
 +  * ShowModalで開く
 +  * そのフォームを閉じる
 +  * new済みなので、再度ShowModalで開く
 +
 +対応方法
 +  * [[https://qiita.com/7of9/items/b6cc4c7a5d407b01ffc9|Visual Studio / WPF > Form > 閉じたウィンドウを再度ShowModal()したとき > Error:System.InvalidOperationException: 'Window が閉じた後で、Visibility の設定や、Show、ShowDialog、およびWindowInteropHelper.EnsureHandl の呼び出しを行うことはできません。 > 対処]]
 +  * [[https://stackoverflow.com/questions/3568233/wpf-cannot-reuse-window-after-it-has-been-closed|WPF: Cannot reuse window after it has been closed]]
 +
 +
 +<code csharp>
 +private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
 +{
 +    e.Cancel = true;
 +    this.Visibility = Visibility.Hidden;
 +}
 +</code>
 +
 +==== Shownイベント ====
 +WPFにはWindowが最初に表示されたときのShownイベントが無いので、代わりにContentRenderedイベントを利用する。\\
 +[[https://qiita.com/tricogimmick/items/79e85baa1e99eec840d8|WPF Windowが最初に表示されたときに処理を行いたい]]
 ==== 表示文字幅の取得 ==== ==== 表示文字幅の取得 ====
 画面に表示される文字の幅を取得する。\\ 画面に表示される文字の幅を取得する。\\
行 193: 行 218:
   * [[http://hogetan.blog24.fc2.com/blog-entry-7.html|WPFでリサイズ可能な枠なしウィンドウを作成する]]   * [[http://hogetan.blog24.fc2.com/blog-entry-7.html|WPFでリサイズ可能な枠なしウィンドウを作成する]]
   * [[http://d.hatena.ne.jp/CoMo/20110421/1303394273|WPFのレイアウトのTips]]   * [[http://d.hatena.ne.jp/CoMo/20110421/1303394273|WPFのレイアウトのTips]]
 +  * [[http://sourcechord.hatenablog.com/entry/20131028/1382978042|アプリの多重起動を防止する]]
it技術/dotnet/wpf開発.1512551119.txt.gz · 最終更新: 2017/12/06 18:05 by yajuadmin