原创 dotnet 在 UNO 裏獲取 X11 窗口指針的方法

在 UNO 的 5.2 版本,可以使用 X11 平臺承載 UNO 應用。此時我需要獲取到 UNO 應用的窗口的 X11 窗口指針,如此即可調用 X11 平臺相關邏輯對 UNO 窗口執行一些交互 本文以下的方法需要用到反射 通過閱讀 UNO

原创 dotnet OpenXML 在 PPTX 表格單元格加上 VerticalMerge 或 HorizontalMerge 將導致 WPS 丟失文本

本文記錄 WPS 的一個已知問題,如果在表格的單元格里面配置了 VerticalMerge 或 HorizontalMerge 爲 false 值時,則在此單元格內的文本將被丟失。此行爲與 Office 的 PowerPoint 不同,預計

原创 dotnet X11 設置窗口鼠標觸摸命中穿透

本文記錄如何在 X11 應用裏面,使用 XShapeCombineRegion 方法配置一個 X11 窗口支持和 Win32 窗口一樣的命中測試穿透功能,即對應 Win32 的 WS_EX_TRANSPARENT 的鼠標、觸摸等的點擊等動作

原创 dotnet 設置 X11 建立窗口之間的父子關係

在 X11 裏面有和 Win32 類似的窗口之間的關係機制,如 Owner-Owned 關係,以及 Parent-Child 關係。本文將告訴大家如何進行設置以及其行爲 本文將大量使用到 new bing 提供的回答內容,感謝 new bi

原创 學習 Avalonia 框架筆記 設置 X11 窗口從最小化狀態還原爲正常狀態

本文記錄在 dotnet 裏面如何設置 X11 窗口從最小化狀態還原爲正常狀態 本文屬於學習 Avalonia 框架系列筆記,更多請參閱 博客導航 核心設置方法如下 /// <summary> /// 代碼從 Avalonia 抄的 htt

原创 dotnet X11 窗口之間發送鼠標消息 模擬鼠標輸入

本文記錄我閱讀 Avalonia 代碼過程中所學習到的在 X11 的窗口之間發送鼠標消息,可以跨進程給其他進程的窗口發送鼠標消息,通過此方式可以實現模擬鼠標輸入 直接使用 XSendEvent 給指定窗口發送消息即可,如以下示例代碼

原创 dotnet 後臺線程發送 X11 窗口消息

本文將告訴大家如何在 dotnet 裏面的後臺線程向自己進程內的窗口發送消息 核心是通過 XSendEvent 發送消息,發送消息想要有反應需要另開 XOpenDisplay 獲取 display 對象,最後再將其關閉才能發送出去 核心代碼

原创 dotnet 後臺線程設置 X11 窗口最小化

本文將告訴大家如何在 dotnet 裏面的後臺線程設置 X11 窗口的最小化 核心設置 X11 窗口最小化的方法是 XIconifyWindow 方法,核心問題是在後臺線程需要自己使用 XOpenDisplay 獲取 Display 對象,

原创 dotnet 如何從 Gtk 3 的窗口到對應的 X11 窗口

本文將告訴大家如何在 Gtk3 的 Gtk.Window 或 Gdk.Window 裏面獲取到對應的 X11 窗口 XID 號 記錄本文是因爲我在這裏踩了很多坑,核心問題就是 GTK 有很多個版本,我開始找的全是使用 GTK 2 的 gdk

原创 WPF 穩定的全屏化窗口方法

本文來告訴大家在 WPF 中,設置窗口全屏化的一個穩定的設置方法。在設置窗口全屏的時候,經常遇到的問題就是應用程序雖然設置最大化加無邊框,但是此方式經常會有任務欄冒出來,或者說窗口沒有貼屏幕的邊。本文的方法是基於 Win32 的,由 lsj

原创 dotnet 9 WPF 支持 Style 的 Setter 填充內容時可忽略 Value 標籤

本文記錄 WPF 在 dotnet 9 的一項 XAML 編寫語法改進點,此改進點用於解決編寫 Style 的 Setter 進行給 Value 賦值時,不能將 Value 當成默認內容,需要多寫 Value 標籤的問題。通過此改進點可減少

原创 ReSharper 顯示使用的顏色

在代碼裏面輸入類似於 Colors.Red 的代碼,將會自動在代碼後面顯示一個對應顏色的小方塊。本文將告訴大家這個功能的開關在哪裏 如 ReSharper 的官方文檔描述,此功能的效果如下 或如下 此功能名叫 “Highlight co

原创 WPF 從鍵盤事件 KeyEventArgs 裏獲取 Scan Code 的方法

本文將告訴大家如何在 WPF 裏面,從鍵盤事件 KeyEventArgs 參數裏獲取到 Scan Code 鍵盤按鍵的設備獨立標識符的方法 概念: 以下來自 bing 的答案 鍵盤的 Scan Code 是按鍵的設備獨立標識符,對應於按鍵在

原创 在 UOS 統信安裝 dotnet sdk 失敗 提示 failed the verification

在 UOS 統信安裝 dotnet sdk 失敗 提示 You cannot install '/home/lindexi/packages-microsoft-prod.deb' that failed the verification,

原创 製作一個能構建 dotnet AOT 的 gitlab runner 的 Debian docker 鏡像

我的需求是需要有一個能夠構建出 dotnet 的 AOT 包的環境,要求這個環境能解決 glibc 兼容依賴的問題,能打出來 x64 和 arm64 的 AOT 的包,且能夠運行 gitlab runner 對接自動構建 需求 以下是我列舉