@@ -61,6 +61,7 @@ public static IKernel UseXtraTheme(this IKernel kernel) {
6161 /// <param name="kernel">Ninject контейнер.</param>
6262 /// <returns>Возвращает настроенный контейнер Ninject.</returns>
6363 /// <exception cref="ArgumentNullException">kernel is null.</exception>
64+ [ Obsolete ( "Сервис применения темы теперь применяется автоматически" ) ]
6465 public static IKernel UseXtraThemeUpdater ( this IKernel kernel ) {
6566 if ( kernel == null ) {
6667 throw new ArgumentNullException ( nameof ( kernel ) ) ;
@@ -89,7 +90,7 @@ public static IKernel UseXtraDispatcher(this IKernel kernel) {
8990
9091 return kernel ;
9192 }
92-
93+
9394 /// <summary>
9495 /// Добавляет в контейнер <see cref="IDispatcherService"/>.
9596 /// </summary>
@@ -127,7 +128,7 @@ public static IKernel UseXtraMessageBox(this IKernel kernel) {
127128 . WithPropertyValue ( nameof ( XtraProgressDialogService . UIThemeService ) ,
128129 c => c . Kernel . Get < IUIThemeService > ( ) )
129130 . WithPropertyValue ( nameof ( XtraProgressDialogService . UIThemeUpdaterService ) ,
130- c => c . Kernel . Get < IUIThemeUpdaterService > ( ) )
131+ c => new XtraThemeUpdaterService ( ) )
131132 . WithPropertyValue ( nameof ( IAttachableService . AllowAttach ) , false ) ;
132133
133134 return kernel ;
@@ -152,7 +153,7 @@ public static IKernel UseXtraMessageBox<T>(this IKernel kernel) {
152153 . WithPropertyValue ( nameof ( XtraProgressDialogService . UIThemeService ) ,
153154 c => c . Kernel . Get < IUIThemeService > ( ) )
154155 . WithPropertyValue ( nameof ( XtraProgressDialogService . UIThemeUpdaterService ) ,
155- c => c . Kernel . Get < IUIThemeUpdaterService > ( ) )
156+ c => new XtraThemeUpdaterService ( ) )
156157 . WithPropertyValue ( nameof ( IAttachableService . AllowAttach ) , true ) ;
157158
158159 return kernel ;
@@ -182,7 +183,7 @@ public static IKernel UseXtraProgressDialog(this IKernel kernel,
182183 . WithPropertyValue ( nameof ( XtraProgressDialogService . UIThemeService ) ,
183184 c => c . Kernel . Get < IUIThemeService > ( ) )
184185 . WithPropertyValue ( nameof ( XtraProgressDialogService . UIThemeUpdaterService ) ,
185- c => c . Kernel . Get < IUIThemeUpdaterService > ( ) )
186+ c => new XtraThemeUpdaterService ( ) )
186187 . WithPropertyValue ( nameof ( IAttachableService . AllowAttach ) , false )
187188 . WithPropertyValue ( nameof ( XtraProgressDialogService . DisplayTitleFormat ) , displayTitleFormat )
188189 . WithPropertyValue ( nameof ( XtraProgressDialogService . StepValue ) , stepValue )
@@ -218,7 +219,7 @@ public static IKernel UseXtraProgressDialog<T>(this IKernel kernel,
218219 . WithPropertyValue ( nameof ( XtraProgressDialogService . UIThemeService ) ,
219220 c => c . Kernel . Get < IUIThemeService > ( ) )
220221 . WithPropertyValue ( nameof ( XtraProgressDialogService . UIThemeUpdaterService ) ,
221- c => c . Kernel . Get < IUIThemeUpdaterService > ( ) )
222+ c => new XtraThemeUpdaterService ( ) )
222223 . WithPropertyValue ( nameof ( XtraProgressDialogService . DisplayTitleFormat ) , displayTitleFormat )
223224 . WithPropertyValue ( nameof ( XtraProgressDialogService . StepValue ) , stepValue )
224225 . WithPropertyValue ( nameof ( XtraProgressDialogService . Indeterminate ) , indeterminate ) ;
@@ -324,6 +325,28 @@ public static IKernel UseXtraNotifications<T>(this IKernel kernel,
324325
325326 return kernel ;
326327 }
328+
329+ /// <summary>
330+ /// Добавляет в контейнер <see cref="ILocalizationService"/>.
331+ /// </summary>
332+ /// <param name="kernel">Ninject контейнер.</param>
333+ /// <param name="resourceName">Наименование ресурсов.</param>
334+ /// <param name="defaultCulture">Языковые настройки по умолчанию. Значение по умолчанию <see cref="CultureInfo.CurrentUICulture"/>.</param>
335+ /// <returns>Возвращает настроенный контейнер Ninject.</returns>
336+ public static IKernel UseXtraLocalization ( this IKernel kernel , string resourceName ,
337+ CultureInfo ? defaultCulture = default ) {
338+ kernel . Bind < ILocalizationService > ( ) . To < XtraLocalizationService > ( )
339+ . InSingletonScope ( )
340+ . WithConstructorArgument ( nameof ( resourceName ) , resourceName )
341+ . WithConstructorArgument ( nameof ( defaultCulture ) , defaultCulture ?? CultureInfo . CurrentUICulture )
342+ . OnActivation ( ( context , service ) =>
343+ service . SetLocalization (
344+ context . Kernel . TryGet < ILanguageService > ( ) ? . HostLanguage
345+ ?? defaultCulture
346+ ?? CultureInfo . CurrentUICulture ) ) ;
347+
348+ return kernel ;
349+ }
327350
328351 /// <summary>
329352 /// Добавляет в контейнер <see cref="IOpenFileDialogService"/>.
@@ -366,6 +389,10 @@ public static IKernel UseXtraOpenFileDialog(this IKernel kernel,
366389
367390 kernel . Bind < IOpenFileDialogService > ( )
368391 . To < XtraOpenFileDialogService > ( )
392+ . WithPropertyValue ( nameof ( XtraOpenFileDialogService . UIThemeService ) ,
393+ c => c . Kernel . Get < IUIThemeService > ( ) )
394+ . WithPropertyValue ( nameof ( XtraOpenFileDialogService . UIThemeUpdaterService ) ,
395+ c => new XtraThemeUpdaterService ( ) )
369396 . WithPropertyValue ( nameof ( IAttachableService . AllowAttach ) , false )
370397 . WithPropertyValue ( nameof ( IOpenDialogServiceBase . Multiselect ) , multiSelect )
371398 . WithPropertyValue ( nameof ( IFileDialogServiceBase . AddExtension ) , addExtension )
@@ -430,6 +457,10 @@ public static IKernel UseXtraOpenFileDialog<T>(this IKernel kernel,
430457 kernel . Bind < IOpenFileDialogService > ( )
431458 . To < XtraOpenFileDialogService > ( )
432459 . WhenInjectedInto < T > ( )
460+ . WithPropertyValue ( nameof ( XtraOpenFileDialogService . UIThemeService ) ,
461+ c => c . Kernel . Get < IUIThemeService > ( ) )
462+ . WithPropertyValue ( nameof ( XtraOpenFileDialogService . UIThemeUpdaterService ) ,
463+ c => new XtraThemeUpdaterService ( ) )
433464 . WithPropertyValue ( nameof ( IAttachableService . AllowAttach ) , true )
434465 . WithPropertyValue ( nameof ( IOpenDialogServiceBase . Multiselect ) , multiSelect )
435466 . WithPropertyValue ( nameof ( IFileDialogServiceBase . AddExtension ) , addExtension )
@@ -493,6 +524,10 @@ public static IKernel UseXtraSaveFileDialog(this IKernel kernel,
493524
494525 kernel . Bind < ISaveFileDialogService > ( )
495526 . To < XtraSaveFileDialogService > ( )
527+ . WithPropertyValue ( nameof ( XtraSaveFileDialogService . UIThemeService ) ,
528+ c => c . Kernel . Get < IUIThemeService > ( ) )
529+ . WithPropertyValue ( nameof ( XtraSaveFileDialogService . UIThemeUpdaterService ) ,
530+ c => new XtraThemeUpdaterService ( ) )
496531 . WithPropertyValue ( nameof ( IAttachableService . AllowAttach ) , false )
497532 . WithPropertyValue ( nameof ( IFileDialogServiceBase . AddExtension ) , addExtension )
498533 . WithPropertyValue ( nameof ( IFileDialogServiceBase . AutoUpgradeEnabled ) , autoUpgradeEnabled )
@@ -514,27 +549,6 @@ public static IKernel UseXtraSaveFileDialog(this IKernel kernel,
514549 return kernel ;
515550 }
516551
517- /// <summary>
518- /// Добавляет в контейнер <see cref="ILocalizationService"/>.
519- /// </summary>
520- /// <param name="kernel">Ninject контейнер.</param>
521- /// <param name="resourceName">Наименование ресурсов.</param>
522- /// <param name="defaultCulture">Языковые настройки по умолчанию. Значение по умолчанию <see cref="CultureInfo.CurrentUICulture"/>.</param>
523- /// <returns>Возвращает настроенный контейнер Ninject.</returns>
524- public static IKernel UseXtraLocalization ( this IKernel kernel , string resourceName , CultureInfo ? defaultCulture = default ) {
525- kernel . Bind < ILocalizationService > ( ) . To < XtraLocalizationService > ( )
526- . InSingletonScope ( )
527- . WithConstructorArgument ( nameof ( resourceName ) , resourceName )
528- . WithConstructorArgument ( nameof ( defaultCulture ) , defaultCulture ?? CultureInfo . CurrentUICulture )
529- . OnActivation ( ( context , service ) =>
530- service . SetLocalization (
531- context . Kernel . TryGet < ILanguageService > ( ) ? . HostLanguage
532- ?? defaultCulture
533- ?? CultureInfo . CurrentUICulture ) ) ;
534-
535- return kernel ;
536- }
537-
538552 /// <summary>
539553 /// Добавляет в контейнер <see cref="ISaveFileDialogService"/>.
540554 /// </summary>
@@ -581,6 +595,10 @@ public static IKernel UseXtraSaveFileDialog<T>(this IKernel kernel,
581595 kernel . Bind < ISaveFileDialogService > ( )
582596 . To < XtraSaveFileDialogService > ( )
583597 . WhenInjectedInto < T > ( )
598+ . WithPropertyValue ( nameof ( XtraSaveFileDialogService . UIThemeService ) ,
599+ c => c . Kernel . Get < IUIThemeService > ( ) )
600+ . WithPropertyValue ( nameof ( XtraSaveFileDialogService . UIThemeUpdaterService ) ,
601+ c => new XtraThemeUpdaterService ( ) )
584602 . WithPropertyValue ( nameof ( IAttachableService . AllowAttach ) , true )
585603 . WithPropertyValue ( nameof ( IFileDialogServiceBase . AddExtension ) , addExtension )
586604 . WithPropertyValue ( nameof ( IFileDialogServiceBase . AutoUpgradeEnabled ) , autoUpgradeEnabled )
@@ -631,6 +649,10 @@ public static IKernel UseXtraOpenFolderDialog(this IKernel kernel,
631649
632650 kernel . Bind < IOpenFolderDialogService > ( )
633651 . To < XtraOpenFolderDialogService > ( )
652+ . WithPropertyValue ( nameof ( XtraOpenFolderDialogService . UIThemeService ) ,
653+ c => c . Kernel . Get < IUIThemeService > ( ) )
654+ . WithPropertyValue ( nameof ( XtraOpenFolderDialogService . UIThemeUpdaterService ) ,
655+ c => new XtraThemeUpdaterService ( ) )
634656 . WithPropertyValue ( nameof ( IAttachableService . AllowAttach ) , false )
635657 . WithPropertyValue ( nameof ( IOpenDialogServiceBase . Multiselect ) , multiSelect )
636658 . WithPropertyValue ( nameof ( IFileDialogServiceBase . AutoUpgradeEnabled ) , autoUpgradeEnabled )
@@ -676,6 +698,10 @@ public static IKernel UseXtraOpenFolderDialog<T>(this IKernel kernel,
676698 kernel . Bind < IOpenFolderDialogService > ( )
677699 . To < XtraOpenFolderDialogService > ( )
678700 . WhenInjectedInto < T > ( )
701+ . WithPropertyValue ( nameof ( XtraOpenFolderDialogService . UIThemeService ) ,
702+ c => c . Kernel . Get < IUIThemeService > ( ) )
703+ . WithPropertyValue ( nameof ( XtraOpenFolderDialogService . UIThemeUpdaterService ) ,
704+ c => new XtraThemeUpdaterService ( ) )
679705 . WithPropertyValue ( nameof ( IAttachableService . AllowAttach ) , true )
680706 . WithPropertyValue ( nameof ( IOpenDialogServiceBase . Multiselect ) , multiSelect )
681707 . WithPropertyValue ( nameof ( IFileDialogServiceBase . AutoUpgradeEnabled ) , autoUpgradeEnabled )
0 commit comments