原创 WPF Grid新增框選功能
有時候會有框選的需求,類似EXCEL一樣,畫一個框選擇裏面的子控件。 選擇後比如可以將子控件的Border設置爲紅色邊框 說下這個功能的大致原理。背景是一個Grid,比如裏面放了很多的Button. 同時還有一個紅
原创 WPF DataGridCheckBoxColumn Checkbox問題
在Datagrid 中使用Checkbox列遇到如下問題: <DataGridCheckBoxColumn Binding= ”{Binding IsChecked}” Header="表頭" CanUserSort=”False”>
原创 Fluent.Ribbon 自帶內容多語言化
通過在顯示功能區之前更改當前線程的區域設置,可以強制對Fluent.Ribbon多語言化。 官方給了兩種多語言方式: 例1,可以通過System.Threading.Thread.CurrentThread.CurrentUICultur
原创 WPF使用TransformToAncestor獲取元素的相對座標
原理:WPF的界面元素是由Visual元素構成的。在可視元素樹Visual中,獲取某個元素相對於它的父級元素(Ancestor)的座標,可以使用TransformToAncestor與Transform方法。 指定中心點,獲取相對座標 例
原创 WPF.UIShell UIFramework之自定義窗口的深度技術
無論是在工作和學習中使用WPF時,我們通常都會接觸到CustomControl,今天我們就CustomWindow之後的一些邊角技術進行探討和剖析。 窗口(對話框)模態閃動(Blink) 自定義窗口的四邊拖拽支持 自定義窗口最大化(位置/
原创 WPF 通過後臺線程添加(DispatchedObservableCollection)集合元素類
1、重寫類ObservableCollection public class DispatchedObservableCollection<T> : ObservableCollection<T> { DispatchEvent
原创 WPF 2019的性能提示
您是WPF開發人員嗎?您的WPF應用程序是否存在性能低下的區域,或者運行得不盡如人意?如果是這樣,我有15條提示可幫助您確定和提高WPF應用程序的性能。 儘管WPF已有十多年的歷史,並且在過去幾年中已經得到了很大的改進,但仍有幾個領域可能
原创 WPF Binding Trace
WPF中的Binding Trace 在WPF中,關於Binding的問題,由於不能直接調試跟蹤,所以有時候很難fix,但是Binding支持log輸出,通過相關的log信息,我們可以解決絕大部分問題。下面我看看如何使用它。 在XAM
原创 MvvmLight中CheckBeginInvokeOnUI方法解析,以及重寫
1、CheckBeginInvokeOnUI的作用 在UI線程上執行操作。 如果從UI線程調用此方法,即刻執行該動作。 如果從另一個線程調用該方法,則該操作將排隊在UI線程的分派器上並異步執行。 對於UI線程的其他操作,多虧了GalaSo
原创 WPF 對ObservableCollection 進行排序
WPF 對ObservableCollection 進行排序通過C#對ObservableCollection 進行排序方法一方法二在ObservableCollection上使用CollectionViewSource進行列表框
原创 c# - 如何在非UI線程中編輯WriteableBitmap.BackBuffer?
MSDN suggests在後臺線程中寫入backbuffer。只需要在ui線程上執行某些更新前和更新後操作。因此,當後臺線程執行實際更新時,ui線程可以自由地執行其他操作: //Put this code in a method
原创 SignalR-WPF實時應用程序
SignalR是Microsoft用於開發實時應用程序的流行服務之一,它基於以下原理:客戶端通過向Web應用程序發送異步(異步)通知進行通信。 .Net客戶端在ASP.NET Core和AndroidOS(客戶端)上的javaScript
原创 併發可視化器
併發可視化工具是可視化工作室的可選擴展。從以下鏈接下載併發可視化工具和併發可視化工具: 下載可視化工作室 2019 擴展的併發可視化工具。 下載可視化工作室 2017 擴展的併發可視化工具。 下載可視化工作室 2015 擴展的併發可視化
原创 DrawingContext.DrawRectangle繪圖的默認背景色問題
最近在項目中使用到DrawingContext.DrawRectangle畫圖 using system.windows.Media using(DrawingContext drawContext=RenderOpen()) { d
原创 ReactiveUI 入門
ReactiveUI入門 ReactiveUI使您能夠使用MVVM模式構建反應式,可測試和可組合的UI代碼。 請參閱我們的ReactiveUI文檔手冊。我們還有一個完整的跨平臺演示應用程序。 入門 要開始使用,請訪問我們的“ 安裝”頁面。