程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> 在Visual Studio 2010中自定義開始頁

在Visual Studio 2010中自定義開始頁

編輯:關於.NET

在講求個性化的今天,什麼都要求個性化,自定義,都強調一個大大的i。所以這才有了iGoogle的自定義頁面,Windows Live的自定義個性主頁。作為程序員們天天使用的開發工具Visual Studio,為了順應這種自定義、個性化的潮流,也引入了自定義開始頁的功能。

Visual Studio 2010的開始頁由一個StartPage.xaml文件控制,通過編輯這個文件,我們可以在我們的這“一畝三分地”上任意耕種,我們可以添加內容,添加按鈕執行某些功能,甚至可以添加一些自定義的控件完成一些特殊的任務等等。總之,自定義的開始頁很好很強大,可以說,自定義開始頁是Visual Studio 2010帶個程序員們的一份見面禮。下面是Visual Studio 2010默認的開始頁,其中我們可以查看新聞,打開項目文檔,反饋問題,打開項目等等。

圖1,Visual Studio 2010的默認開始頁

俗話說,好的開始是成功的一半。自定義開始頁是如此強大,可以幫助我們完成很多常見的任務,給我們的開發工作帶來極大的便利。下面我們就來對開始頁進行一些自定義,完成一些特殊的功能。

1. 創建一個開始頁文件StartPage.xaml

我們可以從零開始創建一個開始頁文件StartPage.xaml,但是更省力的方法是利用Visual Studio 2010給我們提供的開始頁模板,直接在上面修改以形成我們自己的自定義開始頁。

從Visual Studio 2010的安裝目錄下\Common7\IDE\StartPages\en\,復制StartPage.xaml和StartPage.csproj 到用戶目錄..\\Visual Studio 10\StartPages\。如果你的用戶目錄下沒有這個文件夾,則需要自己創建。

當Visual Studio 2010啟動的時候,會查找用戶目錄下的StartPage.xaml文件。如果這個文件存在,就加載這個用戶自定義的開始頁;如果文件不存在,則使用系統默認的開始頁。

2. 刪除一個功能按鈕

通過編輯StartPage.xaml文件,我們可以在開始頁上刪除或者添加功能按鈕,以執行某些自定義的命令。下面我們首先來看看如何刪除一個按鈕,使得開始頁更加簡潔一些。

利用Visual Studio 2010打開我們上一步復制過來的項目StartPage.csproj,然後找到項目中的StartPage.xaml文件,注釋掉其中的如下代碼:

<!-- <vs:TrayGroupItem Content="CTP Walkthroughs"  ImageSource="pack://application:,,,/
  Microsoft.VisualStudio.Shell.UI;
  Component/Packages/StartPage/Images/02_ctpwalkthroughs.png"
  Command="{x:Static vs:StartPageToolWindow.ExecuteCommand}"
  CommandParameter="{StaticResource Links.CTPWalkthroughs}"
  x:Uid="Walkthroughs_Item" />

保存修改後的StartPage.xaml後,當我們重新啟動Visual Studio 2010,我們就可以發現開始頁中間的“CTP Walkthroughts”按鈕已經消失了。看看,自定義開始頁面就是這麼簡單。 

3. 添加一個功能按鈕

要在開始頁上添加一個按鈕也非常簡單,只要按照開始頁模板中代碼添加自己的功能就可以了。復制如下的代碼到剛才我們注釋掉的代碼前面,就可以添加一個功能按鈕了:

<vs:TrayGroupItem Content="Create GUID"
ImageSource="C:\Users\Public\Documents\CTPWalkthroughs\Visual Studio\Samples\Start Page\Heart.png"
Command="{x:Static vs:VSCommands.ExecuteCommand}"
CommandParameter="Tools.ExternalCommand1" />

這段代碼可以創建一個功能按鈕,點擊這個按鈕後,將執行Tools菜單中定義的第一個外部功能,默認情況下是創建GUID的工具。當然,在這裡我們還可以執行很多命令,例如創建新項目,復制文件等等。至於更加具體的命令,大家可以參考MSDN。

圖2,添加創建GUID的按鈕

4. 創建用戶控件

在前面的文章中,我們介紹了如果創建一個自定義開始頁,以及如何在其中刪除添加按鈕。實際上更加重要的是,開始頁可以支持自定義的用戶控件,以完成更加復雜的任務。下面我們就介紹如何在開始頁中添加一個自定義用戶控件,來訂閱此我的blog“有間客棧”的RSS。

◆創建控件項目

在我們剛剛使用的StartPage解決方案中,添加一個Visual C#項目imccBlog,項目模板選擇WPF User Control Library。項目創建完成後,為項目添加下列dll的引用:

C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\Microsoft.VisualStudio.Shell.UI.dll

通過添加此dll的引用,我們可以在XAML中執行Visual Studio的內部命令。

◆編輯UserControl1.xaml

編輯UserControl1.xaml的內容如下,以讀取RSS並顯示在開始頁中:

<UserControl x:Class="imccBlog.UserControl1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:vs="clr-namespace:Microsoft.VisualStudio.PlatformUI;assembly=
Microsoft.VisualStudio.Shell.UI">
  <Grid>
    <Grid.Resources>
      <XmlDataProvider x:Key="imccBlog" XPath="rss/channel"
Source="http://imcc.blogbus.com/index.rdf" />
    </Grid.Resources>
    <Border BorderBrush="Black" BorderThickness="1"
CornerRadius="10" Padding="4" Margin="0,0,0,10" >
      <ItemsControl DataContext="{StaticResource imccBlog}"
ItemsSource="{Binding XPath=item}"
BorderBrush="Transparent" Padding="6" >
        <ItemsControl.ItemTemplate>
     <DataTemplate>
      <TextBlock Margin="0,0,0,6">
    <Image Source="C:\Users\Public\Documents\CTPWalkthroughs\Visual Studio\Samples\Start Page\greendot.png" Height="10" Margin="0,0,5,0" />
      <Hyperlink Foreground="White" Command="
{x:Static vs:VSCommands.Browse}"
CommandParameter="{Binding XPath=link}">
      <TextBlock FontSize="12" Text="{Binding XPath=title}" />
</Hyperlink></TextBlock>
      </DataTemplate>
        </ItemsControl.ItemTemplate>
      </ItemsControl>
    </Border>
  </Grid>
</UserControl>

◆編譯並復制到目標路徑

完成代碼的編輯後,我們編 譯這個新的控件項目,然後將編譯結果imccBlog.dll復制到..\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\StartPageAssemblies\下. (如果沒有此目錄,則創建此目錄),這樣,這個新創建的用戶控件就可以被StartPage.xaml使用了。

◆使用新控件

跟前面介紹的添加按鈕的方法一樣,我們編輯StartPage.xaml文件,添加如下的代碼創建一個按鈕,當點擊這個按鈕後,Visual Studio將訪問用戶控件中定義的RSS源,並在開始頁中顯示出來。

<vs:TrayGroupItem Content="imcc's Blog"                 
ImageSource="http://www.microsoft.com/china/community
/images/MVPs/chenliangqiao.jpg"
InnerContentUri=" imccBlog;Component/UserControl1.xaml" />

班級完成後,整個開始頁的效果如下圖所示。歡迎感興趣的朋友訂閱此Blog :)

圖3,通過開始頁訂閱RSS

通過上面的演示,大家是不是已經對Visual Studio 2010的自定義開始頁有了深刻的印象呢?以前我們只是被動地使用微軟給我們定義好的Visual Studio,現在,通過自定義開始頁,可以讓我們的Visual Studio更加個性,更加便利。在Visual Studio開始頁的這塊地盤上,我們也可以當家作主了!

恩,趕緊把女友的照片放到開始頁上!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved