Wpf,Unity6

来源:https://www.cnblogs.com/Fred1987/archive/2019/09/11/11507628.html
-Advertisement-
Play Games

<?xml version="1.0" encoding="utf-8"?><packages> <package id="CommonServiceLocator" version="1.2" targetFramework="net452" /> <package id="Prism" vers ...


<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="CommonServiceLocator" version="1.2" targetFramework="net452" />
<package id="Prism" version="5.0.0" targetFramework="net452" />
<package id="Prism.Composition" version="5.0.0" targetFramework="net452" />
<package id="Prism.Interactivity" version="5.0.0" targetFramework="net452" />
<package id="Prism.Mvvm" version="1.0.0" targetFramework="net452" />
<package id="Prism.PubSubEvents" version="1.0.0" targetFramework="net452" />
<package id="Prism.UnityExtensions" version="5.0.1" targetFramework="net452" />
<package id="Unity" version="3.5.1404.0" targetFramework="net452" />
</packages>

 

using Microsoft.Practices.Prism.UnityExtensions;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using Microsoft.Practices.Prism.Modularity;
using MA;
using MB;

namespace WpfApplication6
{
    public class WpfBootstrapper:UnityBootstrapper
    {
        protected override DependencyObject CreateShell()
        {
            return Container.TryResolve<Shell>();
        }

        protected override void ConfigureModuleCatalog()
        {
            base.ConfigureModuleCatalog();
            ModuleCatalog moduleCatalog = (ModuleCatalog)this.ModuleCatalog;
            moduleCatalog.AddModule(typeof(ModuleA));
            moduleCatalog.AddModule(typeof(ModuleB));
        }

        protected override IModuleCatalog CreateModuleCatalog()
        {
            return base.CreateModuleCatalog();
        }

        protected override void InitializeShell()
        {
            base.InitializeShell();
            App.Current.MainWindow = (Window)this.Shell;
            App.Current.MainWindow.Show();
        }
    }
}
using Microsoft.Practices.Prism.Modularity;
using Microsoft.Practices.Prism.Regions;
using Microsoft.Practices.Unity;
using MA.Views;
using MA.ViewModel;

namespace MA
{
    public class ModuleA : IModule
    {
        private readonly IRegionManager _regionManager;
        private readonly IUnityContainer _container;
        public ModuleA(IUnityContainer container,IRegionManager regionManager)
        {
            _container = container;
            _regionManager = regionManager;
        }
        public void Initialize()
        {
            _container.RegisterType<IGetStudentList, StudentVM>(new ContainerControlledLifetimeManager());
            this._regionManager.RegisterViewWithRegion("MARegion",typeof(MAView));
        }
    }
}
<UserControl x:Class="MA.Views.MAView"
             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" 
             xmlns:local="clr-namespace:MA.Views"
             mc:Ignorable="d" 
             d:DesignHeight="100" d:DesignWidth="300">
    <Grid Background="Red">
        <DataGrid x:Name="dg" ItemsSource="{Binding StuList}"
                  AutoGenerateColumns="True" BorderBrush="Yellow" BorderThickness="5">
           
        </DataGrid>
    </Grid>
</UserControl>

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 電腦基礎方面的知識,對於一些非科班出身的同學來講,一直是他們心中的痛,而對於科班出身的同學,很多同學在工作之後,也意識到自身所學知識的不足與欠缺,想回頭補補基礎知識。關於電腦基礎的課程很多,內容繁雜,但無論是相關書籍還是大學課程,都有點脫離工作。特別地,電腦基礎知識體系龐雜,想要從零學習或者復 ...
  • 剛剛開始寫微服務,這篇博客就紀念我第一個微服務吧。 1.新建工程 首先要搭建一個微服務環境,我用的是開發環境IDEA,詳細步驟如下: ①打開IDEA File->New->Project 選擇Spring lnitializr 然後點擊next。 填寫包名和項目名字,自己隨便寫,然後next。 進入 ...
  • 一、存儲引擎 1、InnoDB引擎 設計目標是面向線上事務(OLTP)處理的應用。 支持事務、行級鎖、通過多版本併發控制(MVCC)支持高併發、提供一致性非鎖定讀、next-key locking避免幻讀、主鍵聚集索引 2、MyISAM引擎 設計目標是面向OLAP應用。 不支持事務、不支持行鎖、表鎖 ...
  • 在畫類圖的時候,理清類和類之間的關係是重點。類的關係有泛化(Generalization)、實現(Realization)、依賴(Dependency)和關聯(Association)。其中關聯又分為一般關聯關係和聚合關係(Aggregation),合成關係(Composition)。下麵我們結合實 ...
  • 最近做項目,要用到軟體自動化的操作,正好更大家分享一下! 先看看Python操作: 首先是如何打開軟體 第一種利用os模塊,也是最最簡單的一種。假如我想打開記事本,可以: 該函數是非阻塞的。同樣是打開記事本程式,可以這樣寫: 接著是通過句柄操作軟體,給軟體發消息:比如想最大化軟體,將軟體視窗置於最前 ...
  • 1.緩存概念 1.什麼是緩存 這裡要講到的緩存是服務端緩存,簡單的說,緩存就是將一些實時性不高,但訪問又十分頻繁,或者說要很長時間才能取到的數據給存在記憶體當中,當有請求時直接返回,不用經過資料庫或介面獲取。這樣就可以減輕資料庫的負擔。 2.為什麼要用緩存 總的來說就是為了提高響應速度(用戶體驗度), ...
  • 我做的項目有個功能需要進行批量刪除,刪除的數據量有4.5W條數據。 通過下麵的sql語句刪除這麼多數據,直接導致結果超時,無法刪除數據。 我查了一些資料,可能找的不全,找到了一個方法,分批次刪除,每次刪除100條或者1000條…… 代碼如下: 這個只是我個人的方法,大家如果有更合適的方法,歡迎在評論 ...
  • 標題一 標題二 ...
一周排行
    -Advertisement-
    Play Games
  • 1. 說明 /* Performs operations on System.String instances that contain file or directory path information. These operations are performed in a cross-pla ...
  • 視頻地址:【WebApi+Vue3從0到1搭建《許可權管理系統》系列視頻:搭建JWT系統鑒權-嗶哩嗶哩】 https://b23.tv/R6cOcDO qq群:801913255 一、在appsettings.json中設置鑒權屬性 /*jwt鑒權*/ "JwtSetting": { "Issuer" ...
  • 引言 集成測試可在包含應用支持基礎結構(如資料庫、文件系統和網路)的級別上確保應用組件功能正常。 ASP.NET Core 通過將單元測試框架與測試 Web 主機和記憶體中測試伺服器結合使用來支持集成測試。 簡介 集成測試與單元測試相比,能夠在更廣泛的級別上評估應用的組件,確認多個組件一起工作以生成預 ...
  • 在.NET Emit編程中,我們探討了運算操作指令的重要性和應用。這些指令包括各種數學運算、位操作和比較操作,能夠在動態生成的代碼中實現對數據的處理和操作。通過這些指令,開發人員可以靈活地進行算術運算、邏輯運算和比較操作,從而實現各種複雜的演算法和邏輯......本篇之後,將進入第七部分:實戰項目 ...
  • 前言 多表頭表格是一個常見的業務需求,然而WPF中卻沒有預設實現這個功能,得益於WPF強大的控制項模板設計,我們可以通過修改控制項模板的方式自己實現它。 一、需求分析 下圖為一個典型的統計表格,統計1-12月的數據。 此時我們有一個需求,需要將月份按季度劃分,以便能夠直觀地看到季度統計數據,以下為該需求 ...
  • 如何將 ASP.NET Core MVC 項目的視圖分離到另一個項目 在當下這個年代 SPA 已是主流,人們早已忘記了 MVC 以及 Razor 的故事。但是在某些場景下 SSR 還是有意想不到效果。比如某些靜態頁面,比如追求首屏載入速度的時候。最近在項目中回歸傳統效果還是不錯。 有的時候我們希望將 ...
  • System.AggregateException: 發生一個或多個錯誤。 > Microsoft.WebTools.Shared.Exceptions.WebToolsException: 生成失敗。檢查輸出視窗瞭解更多詳細信息。 內部異常堆棧跟蹤的結尾 > (內部異常 #0) Microsoft ...
  • 引言 在上一章節我們實戰了在Asp.Net Core中的項目實戰,這一章節講解一下如何測試Asp.Net Core的中間件。 TestServer 還記得我們在集成測試中提供的TestServer嗎? TestServer 是由 Microsoft.AspNetCore.TestHost 包提供的。 ...
  • 在發現結果為真的WHEN子句時,CASE表達式的真假值判斷會終止,剩餘的WHEN子句會被忽略: CASE WHEN col_1 IN ('a', 'b') THEN '第一' WHEN col_1 IN ('a') THEN '第二' ELSE '其他' END 註意: 統一各分支返回的數據類型. ...
  • 在C#編程世界中,語法的精妙之處往往體現在那些看似微小卻極具影響力的符號與結構之中。其中,“_ =” 這一組合突然出現還真不知道什麼意思。本文將深入剖析“_ =” 的含義、工作原理及其在實際編程中的廣泛應用,揭示其作為C#語法奇兵的重要角色。 一、下劃線 _:神秘的棄元符號 下劃線 _ 在C#中並非 ...