一個基於Net Core3.0的WPF框架Hello World實例

来源:https://www.cnblogs.com/JerryMouseLi/archive/2019/11/07/11812972.html

一個基於Net Core3.0的WPF框架Hello World實例 [toc] 1.創建WPF解決方案 1.1 創建Net Core版本的WPF工程 1.2 指定項目名稱,路徑,解決方案名稱 2. 依賴庫和4個程式文件介紹 2.1 框架依賴庫 依賴Microsoft.NETCore.App跟Mic ...


一個基於Net Core3.0的WPF框架Hello World實例

1.創建WPF解決方案

1.1 創建Net Core版本的WPF工程

1.2 指定項目名稱,路徑,解決方案名稱

2. 依賴庫和4個程式文件介紹

2.1 框架依賴庫

依賴Microsoft.NETCore.App跟Microsoft.WindowsDesktop.App.WPF

2.2 生成文件說明

生成4個文件App.xaml,App.xaml.cs,MainWindow.xaml,MainWindow.xaml.cs

2.2.1 App.xaml

App.xaml設置應用程式的起始文件與資源。這裡的資源一般指:

  • 其他xaml樣式文件的路徑;
  • 設置主題色,背景色,窗體樣式;
  • 按鈕樣式,菜單樣式;
  • 自定義彈出樣式,自定義滾動條寬度;
    ......等等

App.xaml文件內容如下:

<Application x:Class="IBMSManager.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:local="clr-namespace:IBMSManager"
             StartupUri="MainWindow.xaml">
    <Application.Resources>
         系統資源定義區
    </Application.Resources>
</Application>

2.2.2 App.xaml.cs

App.xaml的後臺文件,集成自System.Windows.Application,用於處理整個WPF應用程式相關的設置。

2.2.3 MainWindow.xaml

WPF應用程式界面與XAML設計文件

<Window x:Class="IBMSManager.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:IBMSManager"
        mc:Ignorable="d"
        Title="IBMSManager" Height="450" Width="800">
    <Grid>

    </Grid>
</Window>

2.2.4 MainWindow.xaml.cs

MainWindow.xaml的後臺文件,集成自System.Windows.Window,用於編寫MainWindow.xaml 的交互邏輯代碼

3. Hello World實例

3.1 拖動按鈕控制項到WPF窗體中

MainWindow.xaml文件中會自動添加如下代碼

    <Grid>
        <Button Content="Button" HorizontalAlignment="Right" Margin="0,0,554,254" VerticalAlignment="Bottom"/>
    </Grid>

代碼主要在Grid標簽中描述了按鈕的屬性

3.2 設計時中雙擊按鈕添加按鈕事件

MainWindow.xaml文件中會自動添加Click="Button_Click

    <Grid>
        <Button Content="Button" HorizontalAlignment="Right" Margin="0,0,554,254" VerticalAlignment="Bottom" Click="Button_Click"/>
    </Grid>

後臺MainWindow.xaml.cs文件中自動添加了事件處理函數

private void Button_Click(object sender, RoutedEventArgs e)
       {
       }

3.3 事件處理函數中添加消息提示框

點擊按鈕後,出現消息提示框Hello World。

    private void Button_Click(object sender, RoutedEventArgs e)
        {
            MessageBox.Show("Hello World!");
        }

3.4 效果如下


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

更多相關文章
  • 參考以下博文,我這裡只是筆記一下,原文會更加詳細 c#基礎系列1 深入理解值類型和引用類型 堆棧和托管堆c# 值類型和引用類型 紅色表示——“這啥?”(真實1個問題引出3個問題) CLR支持的兩種類型 引用類型: 引用類型從托管堆上分配,new操作符會返回對象的指針——指向對象數據的記憶體位置的一個引 ...
  • 以前寫過ASP.NET Core 2.x的REST API文章,今年再更新一下到3.0版本。 先決條件 我在B站有一個非常入門的ASP.NET Core 3.0的視頻教程,如果您對ASP.NET Core不瞭解,就可以先看一下裡面的基礎知識和API相關的內容,地址是:https://www.bili ...
  • 如何在IIS中設置功能變數名稱: 1,想好我們想要配置的本地功能變數名稱,我們以www.baidu.com為例。 2,打開系統盤,一般預設的系統盤為C盤,打開:C:\Windows\System32\drivers\etc這路徑,找到文件“hosts”文件。 3,打開文件hosts文件,在最下方回車加入:電腦ip地 ...
  • 多年來,Javascript(及其子框架)已在瀏覽器中運行DOM(文檔對象模型),並且掌握了腳本知識才能真正操作客戶端UI。大約2年前,所有這些都隨著Web Assembly的引入而發生了變化-Web Assembly允許在客戶端解釋已編譯的語言(相對Web Assembly更多瞭解請閱讀瞭解was ...
  • 一處開發,多處同步編輯使用,並且發佈時各個項目均可獨立 一、直接編輯項目工程文件 具體實現為:編輯 文件,在 或 節點: : 屬性值為項目文件的相對引用路徑 : 節點中放置要引用到當前項目中的位置 1.無需編譯的靜態資源文件等,使用 標簽引入 引用當前工程內的文件 引用外部項目工程中的文件 2.需要 ...
  • 場景 通過文件選擇對話框選擇文件 複製文件到指定路徑 註: 博客主頁: https://blog.csdn.net/badao_liumang_qizhi 關註公眾號霸道的程式猿獲取編程相關電子書、教程推送與免費下載。 實現 打開選擇文件對話框 OpenFileDialog importOpenFi ...
  • [DllImport("user32.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.Winapi)] internal static extern IntPtr GetFocus(); ///獲取 當前擁有焦點 ...
  • 場景 C#中File類的常用讀取與寫入文件方法的使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/99693983 註: 博客主頁:https://blog.csdn.net/badao_liumang_qizhi關註公眾號霸 ...
一周排行
  • .NET 走向開源,MIT許可協議。 微軟為了推動.NET開源社區的發展,2014年聯合社區成立了.NET基金會。 一年前 .NET 基金會完成第一次全面改選,2014年 .NET基金會的創始成員中有六位創始人,均非微軟公司員工,隨著微軟的收購動作,Miguel 也成了微軟員工,Migel一直在努力 ...
  • 在這篇文章中,我將帶領大家詳細學習ASP.NET Core 中的Main方法。在這篇文章中,我將向大家詳細介紹下麵幾個問題:ASP.NET Core Main方法的重要性為什麼我們在ASP.NET Core中會有一個Main方法?當你運行一個ASP.NET Core應用程式的時候,背後發生了什麼?為... ...
  • IViewLocationExpander API ExpandViewLocations Razor視圖路徑,視圖引擎會搜索該路徑. PopulateValues 每次調用都會填充路由 項目目錄如下所示 創建區域擴展器,其實我並不需要多區域,我目前只需要達到一個區域中有多個文件夾進行存放我的視圖. ...
  • EF Core 數據變更自動審計設計 Intro 有的時候我們需要知道每個數據表的變更記錄以便做一些數據審計,數據恢復以及數據同步等之類的事情, EF 自帶了對象追蹤,使得我們可以很方便的做一些審計工作,每次變更發生了什麼變化都變得很清晰,於是就基於 EF 封裝了一層數據變更自動審計 使用效果 測試 ...
  • 在上一篇文章abp(net core)+easyui+efcore實現倉儲管理系統——入庫管理之六(四十二)中我們實現了新增入庫單的功能。結合之前的五篇文章,今天我們來測試一下入庫單新增功能。 ...
  • 這篇文章,我們一起學習ASP.NET Core InProcess Hosting.這篇文章主要討論下麵幾個觀點:CreateDefaultBuilder方法執行什麼任務?什麼是ASP.NET Core InProcess Hosting?怎麼使用InProcess hosting Model來托管... ...
  • 關於 Blazor Server Side 的開篇 , Blazor與 C/S , B/S 有什麼不一樣 , Blazor有什麼優缺點? ...
  • VS2019+MVC+EF6 CodeFirst 連接MySQL 1、準備環境(通過NuGet獲取) EntityFramework MySql.Data.Entity 安裝後確認 2、在MVC Model文件夾下添加一個學生類,後面用它通過[數據遷移]在MySQL中創建一個表 3、創建數據上下文 ...
  • 這篇文章,向大家介紹ASP.NET Core中的Kestrel Web伺服器。這篇文章主要討論下麵兩個重要的事情:什麼是Kestrel 伺服器?怎麼使用.NET Core CLI來運行ASP.NET Core應用程式?什麼是Kestrel伺服器? 我們已經知道ASP.NET Core是一個跨平臺的開... ...
  • 前言 回顧之前的兩篇Swagger做Api介面文檔,我們大體上學會瞭如何在net core3.1的項目基礎上,搭建一套自動生產API介面說明文檔的框架。 本來在Swagger的基礎上,前後端開發人員在開發生產期間,可以藉此進行更加便捷的溝通交流。可是總有些時候,遇到一些難纏的,又不講道理,偏偏覺得將 ...