自從之前發了一篇[Silverlight][RIA] Silverlight的未來文章之後,就一直滿心期待能早點見到更強悍的Silverlight,而現在,未來就近在眼前了!!
[WPF][C#] 沒錯!!XAML寫的UserControl也能當作滑鼠游標!!
通常在實作系統的時候,為了配合不同的需求,可能會需要自訂游標的形狀,雖然WPF中有Cursors類別可以用,但是提供的游標仍然有限,所以用圖片來當作游標,或是用XAML寫出來的UserControl來當作游標,似乎就成為不錯的選擇。
這次就來介紹怎麼在WPF中覆寫原來的系統游標,以自訂的游標取代。
[Silverlight][WPF] 解決ImageBrush的TranslateTransform無法正確顯示的現象
日前在MSDN論壇遇到有人問到在WPF的Ellipse中使用ImageBrush做為筆刷,並且將ImageBrush套用TranslateTransform的時候,ImageBrush的顯示可能會有問題,所以我就自己動手在Blend裡面也拉了一個小Sample,來看看這個問題到底是怎麼發生的。
[WPF][Silverlight] 解決Visual Studio 2010 XAML設計模式中的'[Unknown]' property does not point to a DependencyObject in path '(0).(1)[0].(2)'.錯誤
有時候使用Visual Studio 2010開啟以Expression Blend產出的XAML檔要進行編輯的時候,會發生出現Exception的情況;而從錯誤訊息中只能依稀的判斷出是Reflection無法解析出某個屬性,但是在Expression Blend中開啟同一個檔案卻又是正常的,而且不管是用Visual Studio 2010或是Expression Blend進行編譯後也都能順利的執行,這時候千萬別怪罪辛苦的設計人員,並不是他們把XAML搞爛的,而且這種情況是有解的。
[C#] 利用LINQ和ForEach方法取代foreach
我們常常會使用C#中的foreach函數,對集合中的每個目標進行操作。但是,其實也可以使用LINQ搭配List
[Silverlight][WPF][Flex] 我要我的物件浮出來、褪出去 - 善用事件套用物件出現與移除的動畫
常常在實作系統的時候,會為了強調出 RIA中Rich的威力,會希望讓物件被加到畫面上或是被移除的時候能套用一段動畫,來強調這件事的發生,這篇就來看看在Flex中和WPF/Silverlight裡,怎麼分別做到這種效果~
[Windows7] 輕鬆去除Windows7桌面捷徑的小箭頭圖示與"捷徑"前綴字的方法
在Windows Viata與後來的Windows7問世之後,之前在Windows XP上適用的移除捷徑小箭頭的登錄機碼修改法就不再有效。而在網路上隨便搜尋,號稱可以將Windows Vista或Windows 7桌面圖示上的小箭頭消除的方法就有好幾種, 有的得去修改登錄機碼;有的除了修改登錄機碼之外,還得自備圖示取代原來的小箭頭圖示,而且一個不小心,不只小箭頭不會消失,反而會多出一塊黑色的區域,甚至還會讓整個桌面會變得更加的慘不忍睹。
不過,還好出現了方便的小工具可以直接拿來用,不用每次都要修改登錄檔才能達到目的了~
[Windows7] 使用IE9、FireFox與Chrome瀏覽WPF Browser Application(.XBAP)的方式
最近開始寫一些WPF的小Sample和文章,但是畢竟WPF應用程式不像Silverlight那麼方便的只要裝個Plugin就可以透過瀏覽器來看執行結果,因此把腦筋動到了改用WPF Browser Application上,雖然它是WPF,但是一樣可以透過瀏覽器來執行,這樣就可以一邊看文章一邊看範例。不過最近主流的幾種瀏覽器都得進行一些設定或修改才能正常瀏覽XBAP應用程式,這篇就來說明該怎麼設定~
[WPF][Silverlight] 讓ListBox中的項目寬度自動延展以佔滿空間的技巧
如果在專案中必需使用ListBox做為物件呈現的容器時,若使用預設的Template,當在執行期改變ListBox寬度的時候,可能會發現,裡面的項目大小並不會跟著ListBox縮放;就算把裡面的項目水平對齊方式改為Stretch,它還是會依然故我,不管ListBox寬度的變化。
[Blend][Visual Studio] WPF與Silverlight專案方便的在Visual Studio 2010與Blend間切換的幾項小設定
習慣了使用Visual Studio 2010的工程師和使用Blend的設計師應該都會很習慣的使用相同的一套軟體處理同一個專案,不過有時候為了開發、整合或是測試,還是得要在Blend或Visual Studio 2010間相互切換,才能發揮最大的效能。
這次就來分享幾個小設定,讓專案的開發能比較順利的進行~
[WPF] 解決ListBox中的Expander造成的佈局錯誤問題
WPF中的ListBox預設使用的ItemsPanel是VirtualizingStackPanel,而不是一般的StackPanel,這樣在一般的使用上雖然不會發生什麼問題,但是當它一碰上Expander,問題就大條了。
[Windows7] 修復桌面與開始功能表中錯亂或是消失的捷徑圖示
有時候因為某些不明的原因(系統更新、安裝了新程式等等,但不一定是中毒),可能會造成桌面上的捷徑圖示顯示錯誤或是直接消失,這個時候,請先別緊張,不見得是中毒,也不一定非得重灌不可。
[WPF] 快速為WPF換裝 - 使用WPF Themes
話說,WPF從3.0到現在的4.0也已經發展了將近有五年的時間了,堪稱是微軟邁向RIA的第一步,不過,近年來感覺微軟對WPF/E也就是現在的Silverlight投注的關愛似乎比較多那麼一點點,不只是Toolkit更新的速度比較快,連Theme都比WPF多。
[Silverlight] 透過Grid來初步了解物件的MouseEnter、HitTest機制
這次要跟大家透過Grid來初步認識Silverlight中物件的HitTest機制。
[SQL Server] Visual Studio 2010中內建的SQL Server 2008 Expres升級到SQL Server 2008 R2筆記
- 13875
- 0
- SQL Server
- 2013-07-14
上次在[SQL Server]VisualStudio 2010內建的SQL Server 2008 Express 升級與安裝SQL Server Management Studio 2008 實務一文中跟各位介紹了將Visual Studio 2010中預設內建的SQL Server 2008 Express升級成SQL Server 2008 Express with Advanced Services版。不過,今天要跟大家分享的,是我在已經(不幸)安裝了SQL Server 2008 Express版之後,想要使用升級功能升級到SQL Server 2008 R2 Express版的方法和我自己實作的時候遇到的問題。
[Windows Phone] 在非Windows 7、Vista的其他Windows平台上安裝Windows Phone Developer Tools
這幾天在整理開發環境的時候,打算在Windows Server 2008 R2上安裝Windows Phone Developer Tools,不過一執行安裝程式,就跳出警告畫面(哇咧!!要Windows 7或是Vista才能裝啊!?)~~
那我其他Windows平台的開發環境難道就從此要和WP7絕緣了嗎?
[其他] 獲得SkyDrive上檔案的真實路徑(2011/03/09更新)
- 9309
- 0
- 2013-07-14
今天小猴子問我,SkyDrive連結上的圖示有沒有辦法自訂,他說他想用自己做的圖示來當範例下載的圖示,但是苦於SkyDrive給的連結是一整個IFrame,所以沒辦法自己改變裡面的內容,只能想辦法拿到真實的路徑,才能用HTML包出自己要的連結圖片。
所以接下來就要來為大家示範怎麼快速取得SkyDrive上的真實路徑囉!!
[Silverlight] 修改ListBox中項目的樣式並加上CheckBox當選取器
在[WPF]將ListBox的項目加上CheckBox做為選取控制項一文中為各位介紹了修改WPF中ListBox項目樣版的方法,打鐵趁熱,就順便來看看在Silverlight裡面要怎麼做到類似的效果吧!!
[WPF] 將ListBox的項目加上CheckBox做為選取控制項
使用原生的ListBox的話,預設的被選取項目樣式會是一個四四方方的藍色背景,雖然已經看習慣了,不過有的時候為了畫面美觀,或是為了想要與眾不同的話,可能會希望加一個CheckBox來做為選取項目的指示控制項,並且把原來四四方方的色塊做一些改變(如下圖右方的ListBox)。這個要怎麼做到呢?其實非常的簡單,只要修改預設的樣版就行了~
[軟體工程][TFS] 修改TFS內建程序樣版
有時候,因為專案或是組織中不同的需求,得要針對TFS提供的預設程序樣版進行一些修改,才能讓專案或是團隊合作的流程進行的比較順利,這次就來介紹要怎麼修改內定的程序樣版。
[Silverlight][C#] 將Web.config的內容儲存在IsolatedStorage以讓OOB的Silvelright存取的方式
在[Silverlight][ASP.Net][C#]讓Silverlight也能讀取web.config的小撇步一文中跟大家介紹過了怎麼透過ASP.Net存取Web.config的內容,並且讓Silverlight也能存取得到裡面的值,不過最近有人跟我說這個方式行不通,一問之下,才發現原來他的環境不是純的Silverlight,而是透過OOB模式執行,那一定行不通的啊~~所以這次就來教個偷吃步,讓OOB的應用程式也能把Web.config中的內容存起來,以供後續使用的方式。
[Silverlight][C#] 利用C#做到Storyboard的再利用
常在Silverlight專案中,如果是經由Desinger透過Expression Blend拉出來的動畫Storyboard,一般應該都會直接把每個Storyboard的TargetName直接設死,所以如果有四個物件,要套用同一個動畫,可能就得要拉四次,不過其實這個是可以透過程式的協助來解決的,因為Storyboard(甚至Storyboard的Children)的Target,都是可以在執行期間重新設定的。
[WPF][C#] 在WPF中使用LinqToXml讀取XML並且Binding到DataGrid
其實使用LinqToXml要把資料顯示在WPF的DataGrid中的話是非常簡單的,只要短短的幾行Code就行了,而且不只讀取,連回寫的功能要做起來都很簡單!!
[WPF][C#] 在WPF中內嵌WindowsForm控制項 - 使用WindowsFormsControlLibrary
在[WPF][C#]在WPF中內嵌WindowsForm控制項一文中為各位介紹了直接在WPF中使用XAML來嵌入Windows Form控制項的作法,不過不是每個人都喜歡寫XAML,而且有時候會需要把已經存在的Windows Form應用程式嵌入到WPF中,所以這次就來跟大家介紹怎麼使用參考dll檔的方式,把dll中的Windows Form加到WPF中。
[Windows7] 關閉使用Wacom出現觸控水波動畫的解法
身為一個工程師,使用Wacom是很合理也很合邏輯的事,為什麼就是要給我出現水波動畫呢?這樣叫我怎麼寫程式啊!???每次灌好Windows7就得要重新做這個動作一次(其實Vista也會),乾脆把它Memo下來好了~
其實水波動畫是觸控面版的提示動畫,裝了Wacom的Driver之後,Wacom會「順便」被模擬成觸控裝置,所以我不希望看到的東西就出現了。所以,要讓它消失,就得把和觸控面版相關的功能都關一關才行~
[SQL Server] VisualStudio 2010內建的SQL Server 2008 Express 升級與安裝SQL Server Management Studio 2008 實務
- 26039
- 0
- SQL Server
- 2013-07-14
如果使用預設的設定值安裝Visual Studio 2010的話,會一併安裝SQL Server 2008 Express版,不過,它只會很單純的安裝資料庫和資料庫引擎而已,並不會安裝其他的功能和管理工具,例如全文檢索功能、Reproting Service和SQL Server Management Studio 2008 Express,而就我自己的經驗,要自行下載SQL Server Management Studio 2008 Express來安裝的話,又可能遇到各種奇怪的問題(可能是作業系統和環境的關係,在安裝的過程中會讓人氣到快中風),經過一番的研究,在這邊跟大家分享我自己認為比較無痛的升級實務。
[Windows7] Windows7下MSN 2011去廣告與最小化到工作匣的方法
雖然不少人在抱怨新版的MSN不好用,不過,其實我自己MSN2011用一段時間了,對我自己來說接受度是還蠻高的,這次就利用重灌電腦的時間順便做個小筆記~
[Silverlight][WPF][C#] 使用LINQ取得已勾選的CheckBox
通常如果在應用程式裡要以程式取得被勾選的CheckBox有哪些,一般應該都會放個迴圈下去跑,把所有的CheckBox爬過一次,逐一比對是不是有被勾選,不過,有個更簡單的方式!!
用LINQ!!
[Silverlight][C#] 在Silverlight中取得列舉型別中的所有項目並Binding到下拉式選單
在C#中可以很簡單的透過Enum.GetValues()或是Enum.GetNames()來取得列舉型別中項目的值或是名稱,但是在Silvelright中想要使用同一招的話就會發現,咦!?怎麼行不通了!?Silverlight中的Enum完全不提供Enum.GetValues()和Enum.GetNames()這兩個Method啊!!!~~~
[C#] 使用LINQ取出列舉中的所有項目
在C#中要取出列舉中的項目的話,可以使用foreach來達到,透過Enum.GetNames()和Enum.GetValues()方法可以分別取出列舉中每個項目的名稱或是值。
要更直覺的使用的話,還是將列舉轉成List
[軟體工程][Visual Studio] 靜態程式碼檢查 - 使用Visual Studio 2010內建的程式碼分析功能
除了使用FxCop來進行程式碼的檢查之外,其實Visual Studio也內建了程式碼檢查的功能(只是常常被不小心忽略掉而已),這次就來跟大家分享怎麼使用內建的程式碼分析功能。
[軟體工程][程式語言] Code Review的好幫手–.Net程式碼分析工具FxCop
在團隊協力開發模式的工作流程裡面,Code Review通常會佔很重要的一個環節,有良好的Coding Standard配合良好的Code Review機制,就能更進一步的加強程式碼的品質和可讀性。不過通常Code Review都得透過人工或是其他第三方的工具來進行,因此善用對的工具就可以節省許多的時間,也可以培養團隊中開發人員的習慣。
今天要跟各位介紹的,就是一個能降低大量Code Review時間的好工具....
[軟體工程][TFS] Team Foundation Server 2010中新增的Team Project使用者無法正常瀏覽DashBoard(rsAccessDenied)的解決方法-使用TFS Administration Tool
上次解決了報表無法正常顯示的問題(rsInvalidReportParameter)之後,想說換個使用者登入,看看功能是不是都正常,沒想到,一連到專案入口網頁,哇咧~~又是兩個錯誤訊息在迎接我,有沒有這麼熱情啊!?rsAccessDenied....ReportingService的存取被拒~看起來又是權限不足的因素造成的....
[軟體工程][TFS] Team Foundation Server 2010 Reporting Services錯誤(rsProcessingAborted)的解決方法
真是奇怪,之前安裝TFS的時候都還蠻順利的,這次的安裝就真的是問題多多,在搞定權限的問題之後,使用Team Project中專案成員登入Project Portal之後,又冒出另一個Reporting Services(rsProcessingAborted)錯誤!!
[軟體工程][TFS] 解決Team Foundation Server 2010專案成員無法正常瀏覽專案Portal(Error:Access Denied)的解決方法
當安裝完TFS2010,並且透過VS2010建立好Team Project,也針對該Project設定好了成員及權限之後,使用其他成員的電腦開啟VS2010,也很順利的利用Team Explorer連接上了Team Foundation Server、取得了Team Project的成員身份。這時候,想說去專案的入口網站逛逛好了,所以在Visual Studio的Team Explorer中的Team Project上按下滑鼠右鍵,點選了Show Project Portal....
[軟體工程][TFS] Team Foundation Server 2010的DashBoard出現Reporting Services Error(rsInvalidReportParameter)的解決方法
這幾天開開心心的安裝完TFS2010,也很開心的建立完Team Project,設定好專案成員、權限之後,想說先來看看預設的專案入口網站好了,不料,一連到專案入口網站之後,出來招呼我的居然是Burn Rate報表的錯誤訊息,天啊!!!!有沒有這麼親切啊!?
仔細看一看錯誤訊息,內容是Default value or value provided for the report parameter ‘StateParam’ is not a valid value. (rsInvalidReportParameter)....
[Visual Studio] 在64位元作業系統中無法正常執行32位元WCF Service之解決方法
- 10167
- 0
- Visual Studio
- 2013-07-14
如果使用Visual Studio 2008/2010針對32位元的WCF Service Library進行Debug時,Visual Studio會很貼心的自動幫我們以Microsoft WCF Service Host來承載該Library,以讓Debug的動作能順利進行。這個動作在一般32位元的作業系統上執行通常是很正常,也很順利就能Work;不過,若是改用64位元的作業系統,要執行Debug的動作時,就不一定會這麼順利了....
[Visual Studio] 使用Visual Studio搭配Microsoft SQL Server Database Publishing Wizard進行資料庫的匯出工作
- 5849
- 0
- Visual Studio
- 2013-07-14
在用SQL Server Management Studio內建的功能匯出資料庫SQL Script(含資料)一文中跟各位介紹了使用SQL Server Management Studio來進行資料庫的匯出方式,這次來跟大家介紹另一個方式,可以在Visual Studio中進行一樣的操作,把資料庫匯出。
[SQL Server] 使用SQL Server Management Studio內建的功能匯出資料庫SQL Script(含資料)
- 33693
- 0
- SQL Server
- 2013-07-14
當我們在開發需要資料庫的應用程式的時候,通常都會在自己的環境裡面也安裝一套資料庫,以方便自己測試,並且避免去動到其他人的資料,或是正式主機上的資料,然後在要佈署的時候,再想辦法把資料庫備份到正式主機上。
以前可能比較常用的備份方式都是直接使用整個mdf檔備份的方式、Copy Database功能、或是使用SSIS封裝,來進行備份的動作,但是使用以上的方法,當資料庫中的Schema有改變,或是資料改變的時候,又得重新做一次的話,步驟還蠻麻煩的。這邊就跟大家介紹更方便的方法,可以透過產生SQL Script的方式,讓同一個開發團隊的成員快速的創建相同的資料庫格式和資料(當然也包含所有關聯的設定)。
[WPF][C#] 在WPF中內嵌WindowsForm控制項
在開發WPF的專案時,有時候可能會礙於平台的限制或是使用的語言及類別庫的限制,部份功能還是得透過Windows Form來或是某些Windows Form控制項來實作,可是整個系統的外觀已經是既定的WPF了,那要怎麼把Windows Form整合進來呢??
[Silverlight][WPF][C#] 在VS2010中為Storyboard增加Completed事件
有的時候我們為了讓使用者能有比較好的使用者體驗,所以會希望某些動作要在某些動畫播放結束之後再執行,要做到這樣子的功能,在Expression Blend中是相對比較難做到的(畢竟這是Developer的工作),但是在VS2010中要做到,就真的是簡單到一個不行了!!
[WPF][C#] VisualStateManager.GoToState在非UserControl中起不了作用的替代方案
隨著VisualStateManager和State的出現,讓我們在實作使用者介面的狀態轉換上省了很大的工夫,不過VisualStateManager.GoToState這個Method在Silverlight和WPF的UserControl中都可以運作得很正常(因為Silverlight的MainWindow也繼承了UserControl)。
但是,如果在WPF的Window控制項裡面要利用這個方法來切換State的話,那可是你呼叫它一百次它都不會理你的,你不會看到畫面有任何反應,也不會有任何Exception被丟出來,不過,如果透過GoToStateAction的話倒是可以運作得很開心。
難道說在Window控制項中就不能透過程式進行State間的轉換了嗎!?
[Silverlight][C#] 自訂輸入規則驗證
通常我們都會針對應用程式中的文字輸入欄位做一些檢核或是驗證的動作,如果要驗證的欄位有透過DataBinding來做存取值的話,可以透過BindingValidation相關功能進行資料驗證的動作;但是,如果要驗證的欄位完全沒有做DataBinding的話怎麼辦呢!?
既然沒有自動的方法,那我們就自己來手工打造一個自訂的驗證機制吧!!
[Silverlight][ASP.Net][C#] 讓Silverlight也能讀取web.config的小撇步
寫習慣ASP.Net的朋友們應該都很習慣使用web.config來存放系統設定值了,但是Silverlight沒有專屬的設定檔可以用,又不能直接讀取web.config檔,加上Silverilght 3.0之後,原來2.0中ASP.Net的Silveright控制項也被拔掉了,要存取web.config看起來就又更遠了一些。
不過,路是人走出來的,方法是人想出來的,Follow me!!
[Silverlight][WPF] 動手實作Behaviors - 動手實作 Behavior
經過之前的介紹,相信大家已經對Behavior有了初步的概念,但是對於怎麼寫出一個自己的Behavior,應該還是比較沒Fu吧!?
這篇就來跟大家介紹Behavior程式的結構,順便帶大家來實作一個「能用滑鼠滾輪控制放大縮小倍率的放大鏡Behavior」吧!!
[Silverlight][WPF] 幫助工程師與設計師無痛合作的Behaviors
隨著Silverlight 3.0版的問世,Action、Behavior和Trigger這三個方便的類別和相關的衍生類別也跟著亮相,做為程式設計師和介面工程師更緊密而且無痛合作的超強大類別庫之一(好吧,其實有三個),而這三個類別衍生出來的類別,我們統稱之為Behaviors。
[Silverlight][RIA] Silverlight的未來
話說民國99年12月3日凌晨1點(太平洋時間2010年12月2日早上九點),我勉強抵擋住睡意,想把Silverilght Firestarter的內容錄下來,不料早上醒來,居然只錄到兩個小時的內容,真是讓我欲哭無淚,更讓我欲哭無淚的--它居有線上錄影版!!!(早知道我就不用撐到一點了),到了公司之後,發現Silverlight的官網也公佈了下一個版本的功能預覽,於是我和小猴子便想說攜手來翻譯一下,好讓英文苦手的朋友們也能早一步得知這個好消息,沒想到~~翻譯完的版本被我丟在公司的電腦裡,忘記帶回家了,只好全部重翻一次,真是好事多磨啊 >"<~~
[Visula Studio][Silverlight][WPF] 給VS2010用的Action、Behavior和Trigger樣版
通常寫要給WPF或是Silverlight用的Action、Behavior還有Trigger都會是比較偏工程師的工作,但是VS2010預設沒內建這些檔案的樣版,折衷的作法一般就是先透過Blend開出檔案,再以VS2010編輯,但是每次都這樣太累了。
我幫有需要的人準備好了可以直接安裝的Extension檔,以後就能直接建立這幾種檔案啦!!
[WPF][Silverlight] 你不能不了解的 DependencyProperty
在WPF和Silverlight出現之前,我們常常藉由在class中撰寫Property,來供class外部存取class中的變數;但是在WPF出現了之後,也帶出了DependencyProperty這個全新的玩意,它的運作機制和我們之前所熟悉的CLR Property(或稱.Net Proprety,之後本文中我們統一使用CLR Property這個名詞)可是有極大差異的....
[C#] 跟著Ouch寫程式 – 第二課 class中的劇本 : Method
經過了上一課,相信大家對基本的程式邏輯都有了基本的認識,而我們在前言篇有講到,在C#中,通常一個Class裡面會有幾個固定的成員,有用來描述屬性的Property和Field,還有一個是專門處理「動作」的,也就是我們今天要講的主角「Method」(方法),但是在其他語言裡面(像是Java和ActionScript),它被叫做Function(函式),其實指的都是同一種東西。