Tuỳ thuộc và Thuộc tính Gắn thêm

1. Thuộc tính Tuỳ thuộc Thuộc tính tuỳ thuộc là một loại thuộc tính có thể không có giá trị riêng và có thể nhận giá trị từ nguồn dữ liệu thông qua Binding. Lớp DependencyObject trong WPF thực hiện khái niệm đối tượng tuỳ thuộc, còn lớp DependencyProperty thực hiện khái niệm thuộc tính tuỳ thuộc. Lớp DependencyObject có các phương thức GetValue ...

Đăng vào ngày 1 tháng 7 lúc 02:08

Hướng dẫn tích hợp Log4net vào ứng dụng WPF

Trước tiên, cài đặt gói Log4net qua NuGet Package Manager trong Visual Studio. Cấu hình file App.config với các thiết lập logging sau: <configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" /> </startup> <!--Cấu hình log4net bắt đầu--&gt ...

Đăng vào ngày 28 tháng 6 lúc 23:34

Hướng dẫn xây dựng nguồn WPF trên máy cục bộ để hỗ trợ gỡ lỗi

Khi xử lý các sự cố liên quan đến hành vi cảm ứng hay vẽ Stroke trong ứng dụng WPF, khả năng truy cập vào mã nguồn gốc của dự án đóng vai trò then chốt. Đối với các dự án dựa trên .NET Framework thông thường, công cụ debug thường bị giới hạn ở mức độ phản biên (decompile) qua Visual Studio hoặc dnSpy. Quá trình này yêu cầu tạo thêm một demo mớ ...

Đăng vào ngày 28 tháng 6 lúc 11:02

WPF Ứng dụng Windows 11: Vô hiệu hóa tùy chọn Ghim vào thanh tác vụ bằng thuộc tính System.AppUserModel.PreventPinning

Trong một số trường hợp phát triển ứng dụng WPF, có nhu cầu ẩn đi tùy chọn "Ghim vào thanh tác vụ" trong menu chuột phải trên biểu tượng cửa sổ ở thanh tác vụ. Điều này giúp kiểm soát trải nghiệm người dùng, đặc biệt khi ứng dụng mang tính tạm thời hoặc không nên được ghim như một ứng dụng chính. Một ví dụ thực tế là cửa sổ của phần mềm như We ...

Đăng vào ngày 25 tháng 6 lúc 07:24

Triển khai bắt sự kiện chạm toàn hệ thống trong WPF bằng Raw Input

Khi phát triển ứng dụng cho màn hình lớn hoặc thiết bị cảm ứng như tablet, việc theo dõi các tương tác chạm bên ngoài phạm vi cửa sổ ứng dụng là yêu cầu phổ biến. Mặc dù WPF cung cấp sẵn cơ chế xử lý touch/stylus/mouse trong phạm vi window, nhưng để thu thập sự kiện chạm từ bất kỳ vị trí nào trên hệ thống — kể cả khi ứng dụng không ở trạng thái ...

Đăng vào ngày 22 tháng 6 lúc 21:25

Giải pháp xử lý sự cố mất tiêu điểm chuột và bàn phím khi nhúng Unity3D vào ứng dụng WPF

Một cách phổ biến để tích hợp nội dung 3D vào ứng dụng desktop hiện nay là chạy một tiến trình độc lập của Unity3D từ ứng dụng WPF bằng cách sử dụng lớp Process. Khi WPF khởi động file thực thi (.exe) Unity, nó sẽ nhúng cửa sổ 3D vào một vùng giao diện nhất định. Tuy nhiên, sau thao tác tương tác trên giao diện WPF (ví dụ: nhấn nút), tiêu điểm ...

Đăng vào ngày 18 tháng 6 lúc 17:34

Một tình huống mất hiệu lực chạm trên cửa sổ WPF

Trong quá trình vận hành phần mềm kiểm thử màn hình lớn, nhóm sản xuất phát hiện lỗi tiếp nhận chạm không ổn định trên ứng dụng WPF. Vấn đề xảy ra với cả .NET Framework 4.8 và .NET 6, đặc trưng là có thể sử dụng chuột nhưng không phản hồi chạm khi cửa sổ phụ xuất hiện. Để tái hiện vấn đề, xây dựng demo đơn giản với logic: Khi cửa sổ chính (Main ...

Đăng vào ngày 17 tháng 6 lúc 04:45

Loại bỏ màu nền mặc định khi di chuột qua các mục trong ListBox của WPF

Vấn đề phát hiện Trong quá trình phát triển một ứng dụng desktop mới, giao diện người dùng sử dụng nhiều thành phần ListBox như hình dưới đây: Sau khi kiểm tra mã XAML được sử dụng: <!--Danh sách thiết bị--> <Border Grid.Row="0" Grid.Column="1"> <ListBox ItemsSource="{Binding DeviceUserInfos}" ...

Đăng vào ngày 11 tháng 6 lúc 16:49

Tạo URL Tài Nguyên WPF Tự Động Từ Plugin Visual Studio

Việc xây dựng chuỗi URI tài nguyên WPF theo chuẩn pack://application:,,,/AssemblyName;component/Path/To/Resource thường tốn thời gian và dễ nhầm lẫn do sự khác biệt giữa đường dẫn vật lý, cấu trúc dự án và quy ước định dạng URI. Một tiện ích tích hợp trực tiếp vào Visual Studio giúp tự động sinh URL từ tập tin được chọn trong Solution Explorer ...

Đăng vào ngày 11 tháng 6 lúc 00:56

Các kiểu (Style) và mẫu (Template) trong WPF

1. Kiểu (Style) trong WPF Trong WPF, bạn có thể định nghĩa các kiểu (Style) giống như CSS trong các ứng dụng web để áp dụng thiết kế đồng bộ cho các thành phần kiểm soát (control). Kiểu là một dạng tài nguyên, chẳng hạn như định nghĩa nền và font chữ chung cho các nút bấm (Button): <Window.Resources> <Style TargetType="Button& ...

Đăng vào ngày 10 tháng 6 lúc 20:08