Download
Entwicklung
Konto
Download
Entwicklung
Anmelden
Vergessen Konto/Passwort
Konto erstellen
Sprache
Hilfe
Sprache
Hilfe
×
Anmelden
Anmeldename
Passwort
×
Vergessen Konto/Passwort
Übersetzungsstatus von Deutsch
Kategorie:
Software
Personen
PersonalForge
Magazine
Wiki
Suche
OSDN
>
Finden Software
>
System
>
TERASOLUNA Framework
>
Foren
>
Offene Diskussion
>
BizLogicException で スローし、View で表示するダイアログについて
TERASOLUNA Framework
Beschreibung
Projekt Zusammenfassung
Entwickler-Dashboard
Web-Seite
Entwickler
Bildergalerie
RSS Feed-Liste
Aktivität
Statistiken
Historie
Downloads
Aller Releases-Liste
Statistiken
Quellcode
Quellcode-Repositorys-Liste
Subversion
Repository ansehen
Ticket
Ticket-Liste
Liste der Meilensteine
Typenliste
Komponentenliste
Liste der zuletzt benutzten Tickets/RSS
Neue Ticket abschicken
Dokumente
Wiki
Titelseite
Titel-Index
Kürzliche Änderungen
Doc Mgr
List Docs
Kommunikation
Foren
Forum-Liste
Offene Diskussion (1277)
Mailinglisten
Alle Mailinglisten
terasoluna-information
Neuigkeiten
Foren:
Offene Diskussion
(Thread #36050)
Zurück zur Thread-Liste
RSS
BizLogicException で スローし、View で表示するダイアログについて (2014-10-09 17:46 by
kawada
#74563)
Antworten
Ticket erstellen
テラソルナの BizLogicException について お聞きしたいことがあります。
.Netでテラソルナの機能を使用します。
画面から、ビジネスロジックへ処理を飛ばして、ビジネスロジックでエラーの場合に、BizLogicException にてスローします。
画面上で、メッセージボックスが表示されますが、アイコンが赤い「×」マークになります。
どうにか、そのアイコンを「ビックリ」マークなどに変更できないでしょうか。
タイトルも変更できるとありがたいです。
お忙しい中、すみませんが
ご教授よろしくお願いいたします。
Reply to #74563
×
Subjekt
Körper
Reply To Message #74563 > テラソルナの BizLogicException について お聞きしたいことがあります。 > > .Netでテラソルナの機能を使用します。 > 画面から、ビジネスロジックへ処理を飛ばして、ビジネスロジックでエラーの場合に、BizLogicException にてスローします。 > > 画面上で、メッセージボックスが表示されますが、アイコンが赤い「×」マークになります。 > どうにか、そのアイコンを「ビックリ」マークなどに変更できないでしょうか。 > タイトルも変更できるとありがたいです。 > > お忙しい中、すみませんが > ご教授よろしくお願いいたします。
You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.)
Anmelden
Nickname
Vorschau
Eintrag
Abbrechen
Re: BizLogicException で スローし、View で表示するダイアログについて (2014-10-10 17:08 by
tajirim
#74568)
Antworten
Ticket erstellen
[メッセージ #74563 への返信]
ビジネスロジックエラー(BizLogicException)の際にメッセージダイアログに表示される
アイコン、タイトルの変更は、フレームワークの拡張により可能となります。
以下、一つずつご説明いたします。
① アイコンの変更
機能説明書「CL-05 クライアントエラーハンドリング機能」のページCL-05_02にありますように、
ビジネスロジックエラー時に表示するダイアログは、「メッセージ通知機能」を利用して表示しております。
機能説明書「CL-06 メッセージ通知機能」のページCL-06_09にありますように、
メッセージ通知機能では、.NETフレームワーク標準のMessageBoxクラスを利用して
ダイアログを表示しており、デフォルトから表示するボタン等を変更することができる
拡張ポイントが用意されております。
機能説明書「CL-06 メッセージ通知機能」のページCL-06_09の拡張例を参考に
MessageBoxNotificationDisplayerクラスを拡張し、
MessageBoxIconの種類を変更することで、表示するアイコンを変更してください。
以下のようなコードになります。
/// <summary>
/// デフォルトのメッセージ通知機能拡張クラス
/// </summary>
public class CustomMessageBoxNotificationDisplayer :
MessageBoxNotificationDisplayer
{
/// <summary>
/// エラーメッセージ表示
/// </summary>
/// <param name="owner"></param>
/// <param name="message"></param>
/// <param name="caption"></param>
public override void
ShowErrorMessage(System.Windows.Forms.IWin32Window owner,
string message, string caption)
{
// MessageBoxIconをエクスクラメーションに変更
MessageBox.Show(owner, message, caption,
MessageBoxButtons.OK,
MessageBoxIcon.Exclamation,
MessageBoxDefaultButton.Button1,
GetMessageBoxOptions(owner));
}
}
また、スタートアッププロジェクトのTerasolunaFramework.config
IMessageNotificationDisplayerの定義を修正・非コメント化し、拡張クラスを適用してください。
以下のような定義になります。
<unity>
<typeAliases>
<!--★★★メッセージ通知機能拡張クラスの定義-->
<typeAlias alias="CustomMessageBoxNotificationDisplayer"
type="TerasolunaEx.Windows.Forms.MessageNotification.CustomMessageBoxNotificationDisplayer,
TerasolunaEx"/>
</typeAliases>
<containers>
<container>
<types>
<!-- ★★★拡張メッセージ通知機能の設定 -->
<type type="IMessageNotificationDisplayer"
mapTo="CustomMessageBoxNotificationDisplayer"/>
</types>
</container>
</containers>
</unity>
なお、MessageBoxIconの種類については、以下をご参照ください。
<<
http://msdn.microsoft.com/ja-
jp/library/system.windows.forms.messageboxicon%28v=vs.90%29.aspx>>
② タイトルの変更
ビジネスロジックエラーメッセージのタイトル「業務エラー」は、
フレームワークが管理するデフォルトメッセージとして、
Terasoluna.Windows.Forms.dllのDisplayResources.resxにて定義されております。
機能説明書「CM-07 メッセージ管理機能」のページCM-07_05にありますように、
フレームワークが管理するデフォルトメッセージを各プロジェクトで定義した
カスタムメッセージリソースで上書きする拡張ポイントが用意されております。
機能説明書「CM-07 メッセージ管理機能」のページCM-07_05の拡張例を参考に
Terasoluna.Windows.Forms.dllのDisplayResources.resxに対応する
カスタムメッセージリソースを作成し、スタートアッププロジェクトのMainメソッドにて
リソースの上書きを行なってください。
以下のようなコードになります。
/// <summary>
/// アプリケーションのメイン エントリ ポイントです。
/// </summary>
[STAThread]
static void Main()
{
AppDomain.CurrentDomain.UnhandledException
+= new
UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
Application.ThreadException
+= new
System.Threading.ThreadExceptionEventHandler(Application_ThreadException);
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
// [変更点]
//
Terasoluna.Windows.Forms.dllのDisplayResources.resxをカスタムメッセージリソースに差し替える
Terasoluna.Windows.Forms.Properties.
DisplayMessageResources.Manager.CustomResourceType = typeof(CustomDisplayResources);
///TerasolunaStartupForm継承クラスによるフレームワークの起動処理
///TerasolunaBootstrap.configに設定した初期表示画面を起動する
Application.Run(new StartupForm());
}
Reply to
#74563
Reply to #74568
×
Subjekt
Körper
Reply To Message #74568 > [メッセージ #74563 への返信] > ビジネスロジックエラー(BizLogicException)の際にメッセージダイアログに表示される > アイコン、タイトルの変更は、フレームワークの拡張により可能となります。 > > 以下、一つずつご説明いたします。 > > ① アイコンの変更 > > 機能説明書「CL-05 クライアントエラーハンドリング機能」のページCL-05_02にありますように、 > ビジネスロジックエラー時に表示するダイアログは、「メッセージ通知機能」を利用して表示しております。 > > 機能説明書「CL-06 メッセージ通知機能」のページCL-06_09にありますように、 > メッセージ通知機能では、.NETフレームワーク標準のMessageBoxクラスを利用して > ダイアログを表示しており、デフォルトから表示するボタン等を変更することができる > 拡張ポイントが用意されております。 > > 機能説明書「CL-06 メッセージ通知機能」のページCL-06_09の拡張例を参考に > MessageBoxNotificationDisplayerクラスを拡張し、 > MessageBoxIconの種類を変更することで、表示するアイコンを変更してください。 > > 以下のようなコードになります。 > > /// <summary> > /// デフォルトのメッセージ通知機能拡張クラス > /// </summary> > public class CustomMessageBoxNotificationDisplayer : > MessageBoxNotificationDisplayer > { > /// <summary> > /// エラーメッセージ表示 > /// </summary> > /// <param name="owner"></param> > /// <param name="message"></param> > /// <param name="caption"></param> > public override void > ShowErrorMessage(System.Windows.Forms.IWin32Window owner, > string message, string caption) > { > // MessageBoxIconをエクスクラメーションに変更 > MessageBox.Show(owner, message, caption, > MessageBoxButtons.OK, > MessageBoxIcon.Exclamation, > MessageBoxDefaultButton.Button1, > GetMessageBoxOptions(owner)); > } > } > > また、スタートアッププロジェクトのTerasolunaFramework.config > IMessageNotificationDisplayerの定義を修正・非コメント化し、拡張クラスを適用してください。 > > 以下のような定義になります。 > > <unity> > <typeAliases> > <!--★★★メッセージ通知機能拡張クラスの定義--> > <typeAlias alias="CustomMessageBoxNotificationDisplayer" > type="TerasolunaEx.Windows.Forms.MessageNotification.CustomMessageBoxNotificationDisplayer, > TerasolunaEx"/> > </typeAliases> > <containers> > <container> > <types> > <!-- ★★★拡張メッセージ通知機能の設定 --> > <type type="IMessageNotificationDisplayer" > mapTo="CustomMessageBoxNotificationDisplayer"/> > </types> > </container> > </containers> > </unity> > > > なお、MessageBoxIconの種類については、以下をご参照ください。 > <<http://msdn.microsoft.com/ja- > jp/library/system.windows.forms.messageboxicon%28v=vs.90%29.aspx>> > > ② タイトルの変更 > > ビジネスロジックエラーメッセージのタイトル「業務エラー」は、 > フレームワークが管理するデフォルトメッセージとして、 > Terasoluna.Windows.Forms.dllのDisplayResources.resxにて定義されております。 > > 機能説明書「CM-07 メッセージ管理機能」のページCM-07_05にありますように、 > フレームワークが管理するデフォルトメッセージを各プロジェクトで定義した > カスタムメッセージリソースで上書きする拡張ポイントが用意されております。 > > 機能説明書「CM-07 メッセージ管理機能」のページCM-07_05の拡張例を参考に > Terasoluna.Windows.Forms.dllのDisplayResources.resxに対応する > カスタムメッセージリソースを作成し、スタートアッププロジェクトのMainメソッドにて > リソースの上書きを行なってください。 > > 以下のようなコードになります。 > > /// <summary> > /// アプリケーションのメイン エントリ ポイントです。 > /// </summary> > [STAThread] > static void Main() > { > AppDomain.CurrentDomain.UnhandledException > += new > UnhandledExceptionEventHandler(CurrentDomain_UnhandledException); > Application.ThreadException > += new > System.Threading.ThreadExceptionEventHandler(Application_ThreadException); > Application.EnableVisualStyles(); > Application.SetCompatibleTextRenderingDefault(false); > > // [変更点] > // > Terasoluna.Windows.Forms.dllのDisplayResources.resxをカスタムメッセージリソースに差し替える > Terasoluna.Windows.Forms.Properties. > DisplayMessageResources.Manager.CustomResourceType = typeof(CustomDisplayResources); > > ///TerasolunaStartupForm継承クラスによるフレームワークの起動処理 > ///TerasolunaBootstrap.configに設定した初期表示画面を起動する > Application.Run(new StartupForm()); > > }
You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.)
Anmelden
Nickname
Vorschau
Eintrag
Abbrechen
Re: BizLogicException で スローし、View で表示するダイアログについて (2014-10-14 20:53 by
kawada
#74605)
Antworten
Ticket erstellen
[メッセージ #74568 への返信]
> [メッセージ #74563 への返信]
> ビジネスロジックエラー(BizLogicException)の際にメッセージダイアログに表示される
> アイコン、タイトルの変更は、フレームワークの拡張により可能となります。
>
> 以下、一つずつご説明いたします。
>
> ① アイコンの変更
>
> 機能説明書「CL-05 クライアントエラーハンドリング機能」のページCL-05_02にありますように、
> ビジネスロジックエラー時に表示するダイアログは、「メッセージ通知機能」を利用して表示しております。
>
> 機能説明書「CL-06 メッセージ通知機能」のページCL-06_09にありますように、
> メッセージ通知機能では、.NETフレームワーク標準のMessageBoxクラスを利用して
> ダイアログを表示しており、デフォルトから表示するボタン等を変更することができる
> 拡張ポイントが用意されております。
>
> 機能説明書「CL-06 メッセージ通知機能」のページCL-06_09の拡張例を参考に
> MessageBoxNotificationDisplayerクラスを拡張し、
> MessageBoxIconの種類を変更することで、表示するアイコンを変更してください。
>
> 以下のようなコードになります。
>
> /// <summary>
> /// デフォルトのメッセージ通知機能拡張クラス
> /// </summary>
> public class CustomMessageBoxNotificationDisplayer :
> MessageBoxNotificationDisplayer
> {
> /// <summary>
> /// エラーメッセージ表示
> /// </summary>
> /// <param name="owner"></param>
> /// <param name="message"></param>
> /// <param name="caption"></param>
> public override void
> ShowErrorMessage(System.Windows.Forms.IWin32Window owner,
> string message, string caption)
> {
> // MessageBoxIconをエクスクラメーションに変更
> MessageBox.Show(owner, message, caption,
> MessageBoxButtons.OK,
> MessageBoxIcon.Exclamation,
> MessageBoxDefaultButton.Button1,
> GetMessageBoxOptions(owner));
> }
> }
>
> また、スタートアッププロジェクトのTerasolunaFramework.config
> IMessageNotificationDisplayerの定義を修正・非コメント化し、拡張クラスを適用してください。
>
> 以下のような定義になります。
>
> <unity>
> <typeAliases>
> <!--★★★メッセージ通知機能拡張クラスの定義-->
> <typeAlias alias="CustomMessageBoxNotificationDisplayer"
> type="TerasolunaEx.Windows.Forms.MessageNotification.CustomMessageBoxNotificationDisplayer,
> TerasolunaEx"/>
> </typeAliases>
> <containers>
> <container>
> <types>
> <!-- ★★★拡張メッセージ通知機能の設定 -->
> <type type="IMessageNotificationDisplayer"
> mapTo="CustomMessageBoxNotificationDisplayer"/>
> </types>
> </container>
> </containers>
> </unity>
>
>
> なお、MessageBoxIconの種類については、以下をご参照ください。
> <<
http://msdn.microsoft.com/ja-
> jp/library/system.windows.forms.messageboxicon%28v=vs.90%29.aspx>>
>
> ② タイトルの変更
>
> ビジネスロジックエラーメッセージのタイトル「業務エラー」は、
> フレームワークが管理するデフォルトメッセージとして、
> Terasoluna.Windows.Forms.dllのDisplayResources.resxにて定義されております。
>
> 機能説明書「CM-07 メッセージ管理機能」のページCM-07_05にありますように、
> フレームワークが管理するデフォルトメッセージを各プロジェクトで定義した
> カスタムメッセージリソースで上書きする拡張ポイントが用意されております。
>
> 機能説明書「CM-07 メッセージ管理機能」のページCM-07_05の拡張例を参考に
> Terasoluna.Windows.Forms.dllのDisplayResources.resxに対応する
> カスタムメッセージリソースを作成し、スタートアッププロジェクトのMainメソッドにて
> リソースの上書きを行なってください。
>
> 以下のようなコードになります。
>
> /// <summary>
> /// アプリケーションのメイン エントリ ポイントです。
> /// </summary>
> [STAThread]
> static void Main()
> {
> AppDomain.CurrentDomain.UnhandledException
> += new
> UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
> Application.ThreadException
> += new
> System.Threading.ThreadExceptionEventHandler(Application_ThreadException);
> Application.EnableVisualStyles();
> Application.SetCompatibleTextRenderingDefault(false);
>
> // [変更点]
> //
> Terasoluna.Windows.Forms.dllのDisplayResources.resxをカスタムメッセージリソースに差し替える
> Terasoluna.Windows.Forms.Properties.
> DisplayMessageResources.Manager.CustomResourceType = typeof(CustomDisplayResources);
>
> ///TerasolunaStartupForm継承クラスによるフレームワークの起動処理
> ///TerasolunaBootstrap.configに設定した初期表示画面を起動する
> Application.Run(new StartupForm());
>
> }
大変詳しいご説明ありがとうございます。
返信が遅くなり、大変申し訳ありません。
今後とも、よろしくお願い致します。
Reply to
#74568
Reply to #74605
×
Subjekt
Körper
Reply To Message #74605 > [メッセージ #74568 への返信] > > [メッセージ #74563 への返信] > > ビジネスロジックエラー(BizLogicException)の際にメッセージダイアログに表示される > > アイコン、タイトルの変更は、フレームワークの拡張により可能となります。 > > > > 以下、一つずつご説明いたします。 > > > > ① アイコンの変更 > > > > 機能説明書「CL-05 クライアントエラーハンドリング機能」のページCL-05_02にありますように、 > > ビジネスロジックエラー時に表示するダイアログは、「メッセージ通知機能」を利用して表示しております。 > > > > 機能説明書「CL-06 メッセージ通知機能」のページCL-06_09にありますように、 > > メッセージ通知機能では、.NETフレームワーク標準のMessageBoxクラスを利用して > > ダイアログを表示しており、デフォルトから表示するボタン等を変更することができる > > 拡張ポイントが用意されております。 > > > > 機能説明書「CL-06 メッセージ通知機能」のページCL-06_09の拡張例を参考に > > MessageBoxNotificationDisplayerクラスを拡張し、 > > MessageBoxIconの種類を変更することで、表示するアイコンを変更してください。 > > > > 以下のようなコードになります。 > > > > /// <summary> > > /// デフォルトのメッセージ通知機能拡張クラス > > /// </summary> > > public class CustomMessageBoxNotificationDisplayer : > > MessageBoxNotificationDisplayer > > { > > /// <summary> > > /// エラーメッセージ表示 > > /// </summary> > > /// <param name="owner"></param> > > /// <param name="message"></param> > > /// <param name="caption"></param> > > public override void > > ShowErrorMessage(System.Windows.Forms.IWin32Window owner, > > string message, string caption) > > { > > // MessageBoxIconをエクスクラメーションに変更 > > MessageBox.Show(owner, message, caption, > > MessageBoxButtons.OK, > > MessageBoxIcon.Exclamation, > > MessageBoxDefaultButton.Button1, > > GetMessageBoxOptions(owner)); > > } > > } > > > > また、スタートアッププロジェクトのTerasolunaFramework.config > > IMessageNotificationDisplayerの定義を修正・非コメント化し、拡張クラスを適用してください。 > > > > 以下のような定義になります。 > > > > <unity> > > <typeAliases> > > <!--★★★メッセージ通知機能拡張クラスの定義--> > > <typeAlias alias="CustomMessageBoxNotificationDisplayer" > > type="TerasolunaEx.Windows.Forms.MessageNotification.CustomMessageBoxNotificationDisplayer, > > TerasolunaEx"/> > > </typeAliases> > > <containers> > > <container> > > <types> > > <!-- ★★★拡張メッセージ通知機能の設定 --> > > <type type="IMessageNotificationDisplayer" > > mapTo="CustomMessageBoxNotificationDisplayer"/> > > </types> > > </container> > > </containers> > > </unity> > > > > > > なお、MessageBoxIconの種類については、以下をご参照ください。 > > <<http://msdn.microsoft.com/ja- > > jp/library/system.windows.forms.messageboxicon%28v=vs.90%29.aspx>> > > > > ② タイトルの変更 > > > > ビジネスロジックエラーメッセージのタイトル「業務エラー」は、 > > フレームワークが管理するデフォルトメッセージとして、 > > Terasoluna.Windows.Forms.dllのDisplayResources.resxにて定義されております。 > > > > 機能説明書「CM-07 メッセージ管理機能」のページCM-07_05にありますように、 > > フレームワークが管理するデフォルトメッセージを各プロジェクトで定義した > > カスタムメッセージリソースで上書きする拡張ポイントが用意されております。 > > > > 機能説明書「CM-07 メッセージ管理機能」のページCM-07_05の拡張例を参考に > > Terasoluna.Windows.Forms.dllのDisplayResources.resxに対応する > > カスタムメッセージリソースを作成し、スタートアッププロジェクトのMainメソッドにて > > リソースの上書きを行なってください。 > > > > 以下のようなコードになります。 > > > > /// <summary> > > /// アプリケーションのメイン エントリ ポイントです。 > > /// </summary> > > [STAThread] > > static void Main() > > { > > AppDomain.CurrentDomain.UnhandledException > > += new > > UnhandledExceptionEventHandler(CurrentDomain_UnhandledException); > > Application.ThreadException > > += new > > System.Threading.ThreadExceptionEventHandler(Application_ThreadException); > > Application.EnableVisualStyles(); > > Application.SetCompatibleTextRenderingDefault(false); > > > > // [変更点] > > // > > Terasoluna.Windows.Forms.dllのDisplayResources.resxをカスタムメッセージリソースに差し替える > > Terasoluna.Windows.Forms.Properties. > > DisplayMessageResources.Manager.CustomResourceType = typeof(CustomDisplayResources); > > > > ///TerasolunaStartupForm継承クラスによるフレームワークの起動処理 > > ///TerasolunaBootstrap.configに設定した初期表示画面を起動する > > Application.Run(new StartupForm()); > > > > } > > 大変詳しいご説明ありがとうございます。 > 返信が遅くなり、大変申し訳ありません。 > > 今後とも、よろしくお願い致します。
You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.)
Anmelden
Nickname
Vorschau
Eintrag
Abbrechen