December 4, 2014 at 7:39 PM
—
Admin

我曾經嘗試MenuItem的Icon參數來設定Icon,原來是要改Header元件。
如下:
<MenuItem
Name="GridButton" Visibility="Collapsed" Click="GridButton_Click">
<MenuItem.Header>
<StackPanel>
<Image Source="../Images/open.png" Width="16" Height="16"/>
</StackPanel>
</MenuItem.Header>
</MenuItem>
d0cca73b-983e-405b-ac34-ff808596aa9d|0|.0
Posted in: C#
Tags:
November 5, 2014 at 7:07 PM
—
Admin
WPF真是很好用的,可以用XAML來設計。不過,如果在程式運行時,要l新增WPF元件。就一定要用C#。
例如:
TextBlock text1 = new TextBlock();
text1.Text = grid.HeaderText;
inactivePanels.Children.Add(text1);
6e109f4a-3008-4c37-9c94-46ab24511667|0|.0
Posted in: C#
Tags:
May 25, 2014 at 5:32 PM
—
Admin

早前,寫了一個C#範例,主要是用System.Net.Dns.Resolve來把將Domain Name變成IP Address。
非常簡單。
lblIP.Text=System.Net.Dns.Resolve(txtDomain.Text).AddressList[0].ToString()
希望可以幫助到大家的,請按此下載。
bc37851f-15d4-4a59-b94a-ec1eaf2d864d|0|.0
Posted in: C#
Tags:
May 15, 2014 at 2:10 PM
—
Admin
我在C#中使用Regular Expression是非常容易,我常常用來驗證用戶輸入的資料。
只需使用這個Namespace:
using System.Text.RegularExpressions
如果是要作數位驗證,只接受整數(Integer Only)輸入,例如1,2,3:
Regex regex = new Regex(@"^[0-9]*$");
if (!regex.IsMatch(textBox1.Text))
{
MessageBox.Show("Invalid value, integer only!");
}
7f89c183-7643-4c02-9e0a-22e30e9ffb04|0|.0
Posted in: C#
Tags:
April 13, 2014 at 3:45 PM
—
Admin

來源:Open Clip Art根據Public Domain條款下使用
我發現WPF的User Control,不容許它的子元件有Name屬性的。例如:
<advgenControls:CollapsibleControl> <TreeView
x:Name="treeView" Style="{StaticResource MainLeftPanel}" /></advgenControls:CollapsibleControl>
這樣就會這個錯誤出現:
Cannot set Name attribute value 'treeView' on element 'TreeView'. 'TreeView' is under the scope of element 'CollapsibleControl', which already had a name registered when it was defined in another scope. Line 93 Position 5. (MC3093) - D:\Projects\AdvGenContact\AdvGenContact\AdvGenContact.WPF\MainWindow.xaml:93,5
那使我不能在主程式,直接呼叫那元件。
我花了一些時間找尋解決方案,都無法克服的。我認為我是錯用了UserControl.UserControl只是一些可重用的內容。例如我有一款一式一樣的Status Bar必需放置在每一個Window上的,那就應該用User Control.如果好像以上的例子,我只想造一個像Outlook般的可接合的Panel,應該找一個現有的WPF Control來伸延(Override)的。以我的例子來說,我應該找HeaderItemsControl
按:我將會把可接合的Panel元件在AdvGen Contact Manager上發佈的。
76807f9a-0e0d-4eff-be32-7edfbe5f1a50|0|.0
Posted in: C#
Tags:
March 27, 2014 at 1:29 AM
—
Admin

早前,安裝了Visual Studio 2013。當中有很多新功能,而最吸引人的就是MVC5。MVC5真是很多改進。例如它支援Bootstrap。這使網站可以同時在桌面電腦、平板電腦及手機上流暢地運作。還有,支援CSSLESS。那可以使CSS變得物件導向。真的不錯的!快些安裝。
acf0602c-0896-4d64-b352-a49a3bc046d6|0|.0
Posted in: C#
Tags:
March 17, 2014 at 4:22 PM
—
Admin

當然你可以將WPF的Styles在Windows的xaml檔中,不過,我喜歡用一個中央的Style.xaml。那是與CSS的建構相似。比較容易管理,如果更新Styles,只需修改一個檔案。
但是,不要記得在App.xaml,設定Styles檔位址(File Path)
<Application.Resources>
<ResourceDictionary Source="Styles.xaml" />
</Application.Resources>
詳細的範例可以參考我們的Open Source Project- AdvGenContact Manager。
ec78bdaa-6702-4301-8f98-49ab52bb5a7b|0|.0
Posted in: C#
Tags:
March 9, 2014 at 12:43 PM
—
Admin
WPF沒有Link Label的元件,不過,可以用TextBlock加Hyperlink
<TextBlock Grid.Row="2" Name="lblButtom">
<Hyperlink NavigateUri="" Click="lnkAds_Click" Name="lnkAds">Ads:Stellar Phoenix Windows Data Recovery - Pro</Hyperlink>
</TextBlock>.
但NavigateUri可以不用著,儘管按著元件也沒有反應。
因為欠了Click Event:
public void lnkAds_Click(object sender, RoutedEventArgs e)
{
System.Diagnostics.Process.Start("URL");}
2e6edc5b-1acf-43d0-9df0-18ad6938761e|0|.0
Posted in: C#
Tags:
September 25, 2012 at 10:19 PM
—
Admin
今天,收到Micrososft的Email。他們會向所有MSDN會員提供一年Windows Store免費會籍。那真是一個誘因去開發Windows 8的Metro Widget,而且再加上用了C#幾十年了。始終我們做了很多年的Winodws軟件發開的!
647671ac-f7f4-4435-973c-7092a32c805b|0|.0
Posted in: C#
Tags:
September 14, 2012 at 4:01 AM
—
Admin
很多人都知道WCF支援XML作為Response Format的。 其實,它也支援JSON。只要ResponseFormat設定。
[WebGet(ResponseFormat=WebMessageFormat.Json)]
[OperationContract]
public SessionKeyDTO Authenicate(string username, string password)
及web.config中加入
<behavior name="AdvCMS.Services.Service2AspNetAjaxBehavior">
<webHttp/>
<enableWebScript />
</behavior>
它只需要<webHttp/>。 就是那麼簡單的。
按:該原始碼可在我們的AdvGenCMS中找到的 。
35fd3488-e39a-4339-b884-463ba637eeb3|0|.0
Posted in: C#
Tags: