原创 WPF ListView 數據綁定後,ListViewItem如何擁有ContextMenu

這個需要重寫ListView的Style。 首先在ListView的Style對應位置增加一個ContextMenu的聲明: <!--ListViewItem的菜單綁定--> <ContextMenu x:Key="L

原创 WPF如何去掉ContextMenu的顯示和隱藏動畫

首先上一個例子: <Grid Name="grid" Margin="5"> <ListBox> <ListBoxItem Content="asdasd"/> <Lis

原创 WPF 如何在ListView中某一列顯示進度條

使用DataTemplate: <ListView> <ListView.View> <GridView> <GridViewColumn Header="進度" Width="200"

原创 WPF 如何統一設置ListView中GridViewColumn的Style

原先代碼,如果GridViewColumn多了要寫多次,很麻煩: <ListView> <ListView.View> <GridView ColumnHeaderContainerStyle="{StaticResource

原创 WPF 如何編輯ContextMenu的Style

ContextMenu 怎麼用blend編輯默認樣式

原创 WPF實現一個環形等待進度條

顯示效果: 上面的紅色是我設置的一個背景。 以下是XAML: <UserControl x:Class="WPFStyle.DIYControl.RoundProcessBarLoading" xmlns=

原创 WPF MenuItem檢查自己是否有子項

在寫MenuItem的ControlTemplete的時候通過檢查Role的值可以判斷MenuItem狀態: <Trigger Property="Role" Value="TopLevelHeader"> </Trigger>

原创 C++/CX String^ 轉const wchar_t*

Microsoft解決方案 #include <vcclr.h> #include <vcclr.h> void func(String^ strFileName) { pin_ptr<const wchar_t> wch = P

原创 HICON 轉 I

C++通過SHGetFileInfo拿到的圖標是HICON類型。 WPF要顯示只能用Image控件,設置Source源,需要HICON轉ImageSource //IntPtr pIconData 通過HICON強轉 private

原创 C#調用C/C++ DLL方式總結

C#與C/C++ DLL交互方式總結 C#調用C/C++ DLL導出 C/C++的導出函數: int __stdcall AFunc(wchar_t* str) { //ugsdifgoisuhfgiosugdtfuywego

原创 如何隱藏導入表

當有人問我這個問題的時候,我真的是一臉懵逼,我只知道編譯的時候儘量少的引用dll可以減少導入表的量。 後來嘗試一個正常的程序,將PE結構的導入表大小和位置全部設置爲0: 該程序只負責調用MessageBox(實際是MessaheBoxW

原创 LeetCode:兩數之和

兩數之和 題目: 給定一個整數數組和一個目標值,找出數組中和爲目標值的兩個數。你可以假設每個輸入只對應一種答案,且同樣的元素不能被重複利用。 示例: 給定 nums = [2, 7, 11, 15], target = 9 因

原创 反思

很久沒有更新博客了,確實墮落了幾個月。在上家公司以驅動開發的名義入職,結果就研究了一個WDF驅動,然後寫了1個月Python爬蟲。最後被調去做了duilib;由於本身很不喜歡客戶端,所以一直都是煎熬狀態;然後開始了我畢業後第一次跳槽。 剛

原创 C#獲取C/C++返回值爲wchar_t*的內容

最近想練習用WPF寫界面,調用API的時候發現太麻煩,每個參數要自己聲明類型,於是準備寫一個DLL,在DLL裏面調用API,將結果返回(字符串)。 先上DLL函數, wchar_t* GetErrorCodeStr(DWORD dwEr

原创 獲取電腦硬件對應的驅動程序信息

剛換了工作,入職時候大佬讓我研究下 驅動人生/驅動精靈 判斷驅動是否正常是怎麼做到的 一開始是一臉懵逼的,完全不知道要如何下手,不過應該是獲取設備管理器裏硬件屬性,然後進行判斷吧,我就跟據我的猜測進行研究。 第一個要解決的問題就是要如何