WPF相依屬性與附加屬性

by Vivid 10. 八月 2011 01:00

NET Magazine國際中文電子雜誌

作者:許薰尹 精誠資訊恆逸教育訓練中心 資深講師

審 稿:張智凱

文章編號:N110811501

出刊日期:2011/8/10

 

為了簡化WPF應用程式的設計,WPF內建一個屬性系統用來管理物件的屬性值。WPF的屬性和一般.NET屬性不太相同,本文將介紹WPF中的相依屬性(Depedency Property)和附加屬性(Attached Property)。

一般.NET屬性的定義方式,會在類別中宣告一個private欄位(稱為backing field)來存放屬性值,然後再定義一個屬性透過屬性的set、set存取子來設定或讀取backing field的值,這種標準的.NET屬性稱為CLR屬性,例如以下有一個MyClass類別,包含一個MyProperty屬性。

public class MyClass {     
      private int myVar;
      public int MyProperty {
          get { return myVar; }
          set { myVar = value; }
      }       
  }

WPF提供一種新的屬性稱為相依屬性(Dependency Property),屬性的值不一定是儲存在一個簡單的欄位(Field)。WPF的屬性系統會自動管理為相依屬性。

相依屬性(Dependency Property)

相依屬性有一個特色,您可以在父項目設定好屬性值,子項目便會自動套用此屬性值。如此只需要在父項目做統一的設定,例如以下有一個StackPanel項目,其中包含兩個Label,在StackPanel之中設定Opacity屬性為0.1,因為相依屬性具有繼承關係,因此StackPanel之中的兩個Label就自動套用StackPanel Opacity屬性的設定值:

<StackPanel  Opacity="0.1"  Height="100" HorizontalAlignment="Left" Margin="128,78,0,0" Name="stackPanel1" VerticalAlignment="Top" Width="200" >
         <Label Content="Label" Height="28" Name="label1" />
            <Label  Content="Label" Height="28" Name="label2" />
</StackPanel>

圖一是StackPanel、Label與WPF屬性系統的繼承關係圖。

clip_image002

圖 1:相依屬性會自動繼承

自訂相依屬性

大部分的情況下,撰寫WPF應用程式時,您並不太有機會自訂相依屬性。但若想要設計自訂控制項,那麼就會有自訂相依屬性的需求。底下範例程式碼為一個WPF視窗自訂一個名為MyCustomProperty的相依屬性,此自訂屬性與WPF屬性系統的架構圖請參考圖2。

public partial class MyCustomDep : Window {
        public MyCustomDep ( ) {
            InitializeComponent ( );
        }
        public static readonly DependencyProperty MyCustomProperty =
        DependencyProperty.Register ( "MyCustom" , typeof ( string ) ,
        typeof ( MyCustomDep ) , new FrameworkPropertyMetadata ( ) );

        public string MyCustom {
            get { return ( string ) GetValue ( MyCustomProperty ); }
            set { SetValue ( MyCustomProperty , value ); }
        }
        private void button1_Click ( object sender , RoutedEventArgs e ) {
            this.MyCustom = DateTime.Now.ToString ( );
            MessageBox.Show ( this.MyCustom );
        }
    }

剖析上列程式,MyCustomDep是一個WPF Window,只有繼承自DepenendyObject的類別才能夠定義相依屬性,這樣才能和WPF的屬性系統進行互動:

public partial class MyCustomDep : Window {

}

類別中必需為相依屬性定義一型別為DependencyProperty的個欄位(Field),記錄Depedency Property Identifier的參考,且宣告時必需為public static readonly。宣告屬性時,屬性的名稱最後應該以Property字串結尾,如本例的MyCustomProperty。最後叫用DependencyProperty.Register方法向WPF屬性系統註冊相依屬性,這個方法會回傳Depedency Property Identifier。

public static readonly DependencyProperty MyCustomProperty =

DependencyProperty.Register ( "MyCustom" , typeof ( string ) ,

typeof ( MyCustomDep ) , new FrameworkPropertyMetadata ( ) );

Register方法的第一個參數代表相依屬性的名稱,但去掉結尾的Property字串;第二個參數相依屬性的型別;第三個參數是宣告此相依屬性的型別;第四個參數是一個FrameworkPropertyMetadata物件。向WPF屬性系統註冊相依屬性時可以利用FrameworkPropertyMetadata物件,利用它的屬性來告知WPF如何管理相依屬性,例如設定預設值,或指定屬性變更時的回呼函式。

clip_image004

圖 2:自訂相依屬性架構圖

若要存取相依屬性的值可透過DepedencyObject的GetValue與SetValue方法。你也可以為相依屬性定義一個CLR屬性包裝程式(如圖2標示的Wrapper),這樣使用相依屬性時語法就跟傳統.NET CLR屬性類似。CLR包裝程式的名稱應該和相依屬性名稱一樣(去掉結尾的Property字串),並在get、set存取子中利用DepedencyObject的GetValue與SetValue方法來操作屬性。而在WPF內部,這些包裝程式都會被忽略,WPF會直接叫用GetValue與SetValue方法,因此最好不要在get、set方法中撰寫其它的程式碼。

public string MyCustom {
            get { return ( string ) GetValue ( MyCustomProperty ); }
            set { SetValue ( MyCustomProperty , value ); }
}

附加屬性(Attached Properties)

附加屬性(Attached Properties) 是一種特殊型式的相依屬性,通常它在某個類別中定義,但卻是在其它類別中使用,你可以把它當做是一種全域屬性,可以在任何物件設定。附加屬性和相依屬性不太相同,你不需要為附加屬性顯露一個傳統的.NEET屬性包裝程式(Wrapper),不必繼承自DependencyObject類別。屬性的值是儲存在你附加的項目上,而不是顯露附加屬性的項目上。例如DockPanel中包含一個Button設定DockPanel. Dock為Top,因此Button會停駐在DockPanel的上方。DockPanel的Dock是一個附加屬性,但屬性是在Button上使用,而不是定義Dock屬性的DockPanel控制項上。

<DockPanel Name = "dockPanel1" LastChildFill = "False">

<Button Content = "Button" Height = "23" Name = "button1" Width = "75" DockPanel.Dock = "Top" />

</DockPanel>

實際上DockPanel實作了GetDock與SetDock方法,它會呼叫套用附加屬性的Button類別之GetValue與SetValue方法(定義在DependencyObject),參考圖3所示。

clip_image006

圖 3:DockPanel Dock附加屬性結構

附加屬性設定的語法為:

宣告的類別.屬性名稱

不過,附加屬性不是設定了就會有作用,例如以下範例,Button1是DockPanel第一層的子項目,設定Dock屬性有作用,但Button2則是位於StackPanel下,設定了Dock屬性並沒有作用:

<DockPanel Name = "dockPanel1" LastChildFill = "False" >
        <Button Content = "Button1" Height = "23" Name = "button1" Width = "75"
                DockPanel.Dock = "Bottom"
                />
        <StackPanel Height = "100"  Width = "200" Orientation = "Vertical">
            <Button Content = "Button2" Height = "23" Name = "button2" Width = "75"
                     DockPanel.Dock = "Bottom" />
        </StackPanel>
    </DockPanel>

此範例程式在開發工具呈現的結果,參考圖4所示。

clip_image008

圖 4:套用附加屬性

使用附加屬性

附加屬性不像一般.NET CLR屬性有包裝函式能夠存取附加屬性值,因此,宣告附加屬性的類別別必需實作「Get開頭+屬性名稱」與「Set開頭+屬性名稱」的方法以便於從程式中使用附加屬性,例如以下範例,使用DockPanel的GetDock方法讀取附加 button1的Dock屬性,然後將它設定為Dock.Top:

MessageBox.Show ( DockPanel.GetDock ( button1 ).ToString() );

DockPanel.SetDock ( button1 , Dock.Top );

使用FrameworkPropertyMetadata類別設計附加屬性

附加屬性是由XAML定義的,不是透過WPF,因此不必繼承自DependencyProperty。以下範例在自訂的MyDataClass類別定義附加屬性,定義附加屬性的類別必需繼承自DependencyObject類別:

class MyDataClass : DependencyObject {

}

若要定義附加屬性,屬性的名稱要遵循WPF慣例,以Property字串結尾,然後利用Dependency.RegisterAttached方法來定義。若要為附加屬性設定預設值,可以在註冊時利用FrameworkPropertyMetadata類別,RegisterAttached方法的第一個參數代表附加屬性的名稱,本範例為IsValid;第二個參數為附加屬性的型別,本範例為bool;第三個參數為擁有此附加屬性的型別,本範例為MyDataClass;最後一個參數代表一個PropertyMetadata物件,透過它將附加屬性的初始值設定為true:

DependencyProperty.RegisterAttached ( "IsValid" , typeof ( bool ) , typeof ( MyDataClass ),
new PropertyMetadata(true));

設計Get方法

你必需為附加屬性定義一個Get方法(稱Get 存取子),傳入一個輸入參數,表示使用此附加屬性的物件實體,以本例而言,便是UIElement,表示你只能在UIElement套用此附加屬性。Get方法的回傳值型別必須和RegisterAttached方法第二個參數的型別一致,以本例而言型別為bool型別。

public static bool GetIsValid ( UIElement target ) {

return ( bool ) target.GetValue ( IsValidProperty );

}

設計Set方法

你必需為附加屬性定義一個Set方法(稱Set 存取子),傳入兩個參數:第一個參數代表能夠使使用此附加屬性的型別;第二個參數代表附加屬性的值,因此此參數的型別必需和RegisterAttached方法第二個參數的型別一致。

public static void SetIsValid ( UIElement target , bool value ) {

target.SetValue ( IsValidProperty , value );

}

使用附加屬性

若要使用附加屬性參考以下範例, 在TextBox中直接套用附加屬性:

<Window x:Class = "DepProp.UseCustomProperty"
        xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml"
        Title = "UseCustomProperty" Height="300" Width="300"
        xmlns:local = "clr-namespace:DepProp" >
    <Grid>
        <TextBox
           local:MyDataClass.IsValid = "True"
            Height = "23" HorizontalAlignment = "Left" Margin = "10,10,0,0" Name = "textBox1" VerticalAlignment = "Top" Width = "120" />
    </Grid>
</Window>

實作附加行為(Attatched Behavior)

你可以為附加屬性設計附加行為(Attatched Behavior),例如變更外觀、拖曳或資料驗證動作。我們可以使用PropertyMetadata類別來為使用附加屬性的項目加上事件回呼函式,以便在屬性值變動時,進行一些額外的處理作業。例如以下範例程式碼,在註冊附加屬性時第四個參數傳入一個PropertyMetadata物件,將IsValid附加屬性初始值設定為false,然後設定PropertyChangedCallback委派指向OnIsValidChanged方法:

public static readonly DependencyProperty IsValidProperty
            = DependencyProperty.RegisterAttached ( "IsValid" , typeof ( bool ) , typeof ( MyDataClass ) ,
            new PropertyMetadata ( false , OnIsValidChanged ) );

本例中的OnIsValidChanged方法實作的行為是:當IsValid屬性的值為true時,便將套用附加屬性的TextBox的外框變成紅色,框線粗細設定為5:

public static void OnIsValidChanged ( DependencyObject source , DependencyPropertyChangedEventArgs e ) {
            if ( ( bool ) e.NewValue == true ) {
                TextBox txt = ( TextBox ) source;
                txt.BorderBrush = Brushes.Red;
                txt.BorderThickness = new Thickness ( 5 );
              
            }
}

總結

相依屬性的核心是DependencyProperty與DependencyObject類別。DependencyProperty類別的實體稱為Dependency Property Identifier,代表特定相依屬性的特性。DependencyObject物件包含所有和WPF屬性系統互動的架構。

 
   

Tags:

NET 開發 | WPF | 許薰尹Vivid Hsu | .NET Magazine國際中文電子雜誌

評論 (195) -

cours de theatre paris
cours de theatre paris United States
2017/9/30 下午 11:02:01 #

Thank you for your article.Really looking forward to read more. Cool.

回覆

can ho dic phoenix
can ho dic phoenix United States
2017/10/6 下午 10:37:31 #

Thank you ever so for you blog post.Really looking forward to read more. Really Great.

回覆

buy hacklinks
buy hacklinks United States
2017/10/9 下午 12:32:58 #

Wow, great article post.Really thank you! Keep writing.

回覆

Osimi seaview
Osimi seaview United States
2017/10/9 下午 04:28:20 #

I really enjoy the blog article.Thanks Again. Want more.

回覆

solarmovie
solarmovie United States
2017/10/10 下午 06:14:59 #

A round of applause for your article post.Thanks Again.

回覆

Sterling Businesses Ltd
Sterling Businesses Ltd United States
2017/10/10 下午 08:23:45 #

I really enjoy the post. Really Cool.

回覆

pirater un compte facebook
pirater un compte facebook United States
2017/10/10 下午 10:41:32 #

Thank you for your blog article.Really looking forward to read more. Want more.

回覆

buy hacklink
buy hacklink United States
2017/10/12 下午 07:06:27 #

Im obliged for the blog post. Cool.

回覆

site web
site web United States
2017/10/14 下午 01:46:15 #

Really enjoyed this post.Really thank you! Keep writing.

回覆

dragon city hack unlimited gems apk
dragon city hack unlimited gems apk United States
2017/10/15 下午 01:47:02 #

Im obliged for the post.Really looking forward to read more. Great.

回覆

omega xl
omega xl United States
2017/10/15 下午 06:30:28 #

Fantastic blog article.Really thank you! Fantastic.

回覆

sletrokor review
sletrokor review United States
2017/10/17 下午 06:38:04 #

Fantastic blog post.Really thank you! Cool.

回覆

The Avila 2
The Avila 2 United States
2017/10/19 上午 04:00:41 #

Appreciate you sharing, great article.Much thanks again. Will read on...

回覆

VigRx Plus
VigRx Plus United States
2017/10/19 上午 05:41:25 #

Very neat post.Thanks Again. Much obliged.

回覆

learn the facts here now
learn the facts here now United States
2017/10/19 下午 04:24:07 #

Thanks again for the article post.Really thank you! Cool.

回覆

pure slim 1000 review
pure slim 1000 review United States
2017/10/20 上午 01:54:07 #

Thanks for the blog article.Much thanks again. Fantastic.

回覆

DIC Phoenix
DIC Phoenix United States
2017/10/21 上午 01:29:49 #

This is one awesome blog post.Really thank you! Cool.

回覆

carte grise en ligne
carte grise en ligne United States
2017/10/21 上午 05:11:45 #

Really appreciate you sharing this blog post.Much thanks again. Keep writing.

回覆

elakekassa suomi
elakekassa suomi United States
2017/10/21 下午 03:36:20 #

This is one awesome post. Will read on...

回覆

Turbotax phone number
Turbotax phone number United States
2017/10/24 上午 05:56:02 #

I really liked your blog article.Much thanks again. Keep writing.

回覆

can ho osimi
can ho osimi United States
2017/10/28 上午 07:23:15 #

Really enjoyed this blog. Cool.

回覆

EZ Battery Reconditioning
EZ Battery Reconditioning United States
2017/10/30 上午 06:19:39 #

Really informative blog.Really looking forward to read more. Cool.

回覆

mamaweeb
mamaweeb United States
2017/11/1 上午 06:31:14 #

I value the article post.Really thank you! Really Great.

回覆

phenocal
phenocal United States
2017/11/1 下午 01:51:51 #

Fantastic article.Really thank you! Much obliged.

回覆

phentaslim
phentaslim United States
2017/11/3 上午 11:35:36 #

Thanks-a-mundo for the post.Thanks Again. Cool.

回覆

avocat criminel montreal
avocat criminel montreal United States
2017/11/16 下午 06:31:17 #

Thank you for your article.Thanks Again. Really Cool.

回覆

fashion
fashion United States
2017/11/23 下午 09:59:43 #

I am so grateful for your blog.Thanks Again. Fantastic.

回覆

It Company In Auckland
It Company In Auckland United States
2017/11/25 下午 06:57:20 #

Im thankful for the blog post.Thanks Again. Really Cool.

回覆

Chad Boonswang and Jeffrey Goodman
Chad Boonswang and Jeffrey Goodman United States
2017/11/26 下午 06:06:55 #

I really liked your blog post.Really thank you! Cool.

回覆

Chad Boonswang SEO
Chad Boonswang SEO United States
2017/11/27 上午 12:12:06 #

A big thank you for your blog post.Really thank you! Want more.

回覆

fake car wreckers
fake car wreckers United States
2017/11/29 下午 04:34:24 #

I am so grateful for your blog.Really looking forward to read more. Really Great.

回覆

Calla Garden
Calla Garden United States
2017/11/29 下午 11:10:37 #

Thanks for the blog.Thanks Again. Really Great.

回覆

business trade lines
business trade lines United States
2017/12/1 上午 12:59:33 #

Very good post.Really looking forward to read more. Really Great.

回覆

porno
porno United States
2017/12/1 下午 04:40:34 #

Major thankies for the blog article.Much thanks again. Awesome.

回覆

Build Business Credit
Build Business Credit United States
2017/12/3 上午 04:58:26 #

Really enjoyed this blog article. Really Great.

回覆

sextus.mobi
sextus.mobi United States
2017/12/5 上午 09:45:46 #

Very neat article post.Really looking forward to read more. Keep writing.

回覆

Very informative blog post.Much thanks again. Want more.

回覆

Say, you got a nice blog post.Really thank you! Keep writing.

回覆

site legalize
site legalize United States
2017/12/10 下午 07:22:29 #

Great, thanks for sharing this post.Really thank you! Fantastic.

回覆

you can look here
you can look here United States
2017/12/14 下午 04:21:26 #

Great, thanks for sharing this blog post.Thanks Again. Want more.

回覆

Christmas Music
Christmas Music United States
2017/12/14 下午 10:53:09 #

Fantastic article.Really thank you! Great.

回覆

tips lose weight
tips lose weight United States
2017/12/17 上午 12:21:06 #

Thanks again for the article post.Thanks Again. Keep writing.

回覆

I cannot thank you enough for the article.Thanks Again.

回覆

Coffee
Coffee United States
2017/12/17 下午 05:43:48 #

Thank you for your post.Thanks Again. Great.

回覆

Degreeshortcut
Degreeshortcut United States
2017/12/18 上午 12:47:18 #

Thank you for your blog.Thanks Again. Cool.

回覆

earn extra cash
earn extra cash United States
2017/12/20 下午 06:56:50 #

Thanks again for the blog article.Much thanks again.

回覆

canon drivers
canon drivers United States
2017/12/23 上午 06:02:39 #

I truly appreciate this blog.Thanks Again.

回覆

Looking forward to reading more. Great blog.

回覆

hp driver
hp driver United States
2017/12/25 下午 06:04:11 #

I think this is a real great blog.Much thanks again. Great.

回覆

Thanks for sharing, this is a fantastic post.Much thanks again. Awesome.

回覆

Very informative article post. Really Cool.

回覆

SOCCER HIGHLIGHTS
SOCCER HIGHLIGHTS United States
2017/12/26 下午 02:49:26 #

Really informative blog post. Cool.

回覆

canon printer series
canon printer series United States
2017/12/27 下午 07:16:13 #

Really enjoyed this article post. Great.

回覆

hp drivers
hp drivers United States
2018/1/2 上午 09:54:38 #

Thank you ever so for you article.Really thank you! Want more.

回覆

her explanation
her explanation United States
2018/1/2 下午 05:59:44 #

Very good post.Really thank you! Awesome.

回覆

Im thankful for the post. Cool.

回覆

hp drivers
hp drivers United States
2018/1/3 上午 09:17:48 #

Very good blog.Really looking forward to read more. Fantastic.

回覆

best Bitcoin casinos
best Bitcoin casinos United States
2018/1/4 下午 07:58:28 #

I truly appreciate this article.Really looking forward to read more. Will read on...

回覆

hp printer driver
hp printer driver United States
2018/1/5 下午 05:56:42 #

I really liked your post.Really looking forward to read more. Want more.

回覆

FBA
FBA United States
2018/1/6 上午 10:02:56 #

Fantastic blog.Thanks Again. Fantastic.

回覆

web hosting
web hosting United States
2018/1/10 上午 11:30:42 #

I appreciate you sharing this blog. Fantastic.

回覆

yOpDeCCDw3
yOpDeCCDw3 United States
2020/2/7 上午 08:04:02 #

248374 688455This sounds in a way inflammatory pending me�can�t wait for this�thank you! 54088

回覆

War Commander
War Commander United States
2020/10/31 上午 01:15:23 #

Hi my loved one! I wish to say that this post is awesome, nice written and include approximately all vital infos. I'd like to peer extra posts like this.

回覆

war commander wiki airfield
war commander wiki airfield United States
2020/11/27 下午 05:42:05 #

Hello my loved one! I want to say that this post is awesome, great written and come with almost all important infos. I'd like to see extra posts like this.

回覆

I truly appreciate this post. I have been looking everywhere for this! Thank goodness I found it on Bing. You have made my day! Thx again!

回覆

war commander omega hive 225 base
war commander omega hive 225 base United States
2020/11/27 下午 07:52:05 #

I have learn several good stuff here. Definitely worth bookmarking for revisiting. I wonder how much effort you put to make any such fantastic informative website.

回覆

war commander bases
war commander bases United States
2020/12/4 下午 07:53:46 #

I truly appreciate this post. I've been looking all over for this! Thank goodness I found it on Bing. You have made my day! Thank you again!

回覆

war commander base 55
war commander base 55 United States
2020/12/4 下午 07:54:34 #

A person essentially assist to make significantly posts I would state. This is the first time I frequented your web page and up to now? I amazed with the analysis you made to make this particular publish amazing. Fantastic task!

回覆

war commander base setup- defense type
war commander base setup- defense type United States
2020/12/4 下午 07:59:47 #

You are my  breathing in, I  have  few  web logs and  rarely  run out from to post .

回覆

war commander base defence
war commander base defence United States
2020/12/4 下午 08:01:00 #

You have brought up a very  excellent   details , thanks  for the post.

回覆

war commander thorium dawn
war commander thorium dawn United States
2020/12/4 下午 08:02:16 #

Simply want to say your article is as astounding. The clarity in your post is just great and i could assume you're an expert on this subject. Fine with your permission allow me to grab your RSS feed to keep updated with forthcoming post. Thanks a million and please continue the gratifying work.

回覆

war commander forum
war commander forum United States
2020/12/4 下午 08:04:04 #

What i don't understood is in fact how you are now not really much more neatly-liked than you may be right now. You're so intelligent. You recognize therefore considerably in terms of this subject, produced me in my opinion imagine it from so many numerous angles. Its like men and women aren't involved unless it is something to accomplish with Girl gaga! Your individual stuffs great. All the time take care of it up!

回覆

war commander download
war commander download United States
2020/12/4 下午 08:09:09 #

It is truly a great and useful piece of information. I am happy that you simply shared this useful information with us. Please keep us up to date like this. Thanks for sharing.

回覆

war commander base set up
war commander base set up United States
2020/12/4 下午 08:12:53 #

Some  genuinely quality   content  on this  web site ,  saved to favorites .

回覆

war commander game
war commander game United States
2020/12/4 下午 08:18:12 #

Merely  wanna comment  that you have a very  decent  web site , I like  the  style  it  actually stands out.

回覆

war commander raid bases
war commander raid bases United States
2020/12/4 下午 08:24:57 #

Utterly written content, thanks for selective information. "In the fight between you and the world, back the world." by Frank Zappa.

回覆

war commander base design
war commander base design United States
2020/12/4 下午 08:27:41 #

Some truly fantastic content on this website, appreciate it for contribution. "An alcoholic is someone you don't like who drinks as much as you do." by Dylan Thomas.

回覆

war commander showdown
war commander showdown United States
2020/12/4 下午 08:30:16 #

I like this post, enjoyed this one thanks  for posting .

回覆

war commander base v
war commander base v United States
2020/12/4 下午 08:31:02 #

You are my  aspiration , I own  few blogs  and  very sporadically  run out from to post .I  conceive this  site  contains some  real  good  info  for everyone. "Good advice is always certain to be ignored, but that's no reason not to give it." by Agatha Christie.

回覆

war commander game
war commander game United States
2020/12/4 下午 08:41:46 #

You could certainly see your expertise in the paintings you write. The world hopes for even more passionate writers such as you who are not afraid to say how they believe. Always go after your heart. "The point of quotations is that one can use another's words to be insulting." by Amanda Cross.

回覆

war commander base defence
war commander base defence United States
2020/12/4 下午 08:44:29 #

Hello, i think that i saw you visited my blog thus i came to “return the favor”.I'm attempting to find things to enhance my web site!I suppose its ok to use a few of your ideas!!

回覆

war commander base setups 2020 1
war commander base setups 2020 1 United States
2020/12/4 下午 08:47:14 #

I dugg some of you post as I  cerebrated they were  very helpful   very beneficial

回覆

war commander facebook
war commander facebook United States
2020/12/4 下午 08:50:00 #

I like what you guys are up too. Such smart work and reporting! Carry on the superb works guys I've incorporated you guys to my blogroll. I think it'll improve the value of my web site Smile.

回覆

hive boss war commander bases
hive boss war commander bases United States
2020/12/4 下午 08:50:50 #

Utterly written content, thanks for information. "The last time I saw him he was walking down Lover's Lane holding his own hand." by Fred Allen.

回覆

war commander base setup
war commander base setup United States
2020/12/4 下午 08:50:54 #

Excellent website. Lots of useful info here. I'm sending it to several buddies ans additionally sharing in delicious. And obviously, thank you in your effort!

回覆

war commander base setup 2019
war commander base setup 2019 United States
2020/12/4 下午 08:52:46 #

Very interesting subject, regards for putting up.

回覆

war commander pc
war commander pc United States
2020/12/4 下午 08:56:48 #

Thank you for the auspicious writeup. It in fact was a amusement account it. Look advanced to far added agreeable from you! By the way, how can we communicate?

回覆

best war commander bases
best war commander bases United States
2020/12/4 下午 08:58:21 #

Hello There. I found your blog using msn. This is an extremely well written article. I’ll be sure to bookmark it and come back to read more of your useful info. Thanks for the post. I’ll certainly return.

回覆

war commander facebook
war commander facebook United States
2020/12/4 下午 09:03:29 #

Thank you for the good writeup. It in fact was a amusement account it. Look advanced to more added agreeable from you! However, how can we communicate?

回覆

hive boss war commander bases
hive boss war commander bases United States
2020/12/4 下午 09:04:18 #

I was reading  some of your  content  on this website  and I  conceive this  site is  rattling informative ! Keep   putting up.

回覆

war commander cheats
war commander cheats United States
2020/12/4 下午 09:06:16 #

I've recently started a blog, the information you provide on this web site has helped me tremendously. Thank you for all of your time & work.

回覆

elite nova war commander bases
elite nova war commander bases United States
2020/12/4 下午 09:07:17 #

Some  truly  quality   content  on this  site, bookmarked .

回覆

I do accept as true with all the ideas you have offered for your post. They're really convincing and can definitely work. Nonetheless, the posts are very quick for novices. May just you please extend them a bit from next time? Thanks for the post.

回覆

war commander
war commander United States
2020/12/4 下午 09:12:35 #

It's in reality a nice and useful piece of info. I am satisfied that you simply shared this useful info with us. Please keep us up to date like this. Thank you for sharing.

回覆

war commander base 55
war commander base 55 United States
2020/12/4 下午 09:14:08 #

F*ckin' awesome issues here. I'm very satisfied to see your article. Thanks a lot and i am looking forward to contact you. Will you kindly drop me a mail?

回覆

war commander base 55
war commander base 55 United States
2020/12/4 下午 09:15:01 #

I have read some just right stuff here. Certainly price bookmarking for revisiting. I wonder how so much effort you put to make this kind of fantastic informative website.

回覆

war commander download
war commander download United States
2020/12/4 下午 09:15:14 #

Somebody essentially assist to make significantly articles I would state. This is the very first time I frequented your website page and to this point? I amazed with the research you made to make this actual submit amazing. Excellent activity!

回覆

war commander base layout
war commander base layout United States
2020/12/4 下午 09:17:51 #

I like this post, enjoyed this one appreciate it for putting up. "No trumpets sound when the important decisions of our life are made. Destiny is made known silently." by Agnes de Mille.

回覆

war commander base designs
war commander base designs United States
2020/12/4 下午 09:19:27 #

Thankyou  for helping out,  superb   information.

回覆

kixeye war commander
kixeye war commander United States
2020/12/4 下午 09:23:11 #

Some really   select  blog posts on this website ,  saved to my bookmarks .

回覆

war commander base defence
war commander base defence United States
2020/12/4 下午 09:24:36 #

I have recently started a blog, the info you provide on this website has helped me greatly. Thank you for all of your time & work.

回覆

war commander base attack
war commander base attack United States
2020/12/4 下午 09:25:42 #

I was  studying some of your  content  on this  site and I  believe  this  site is  really  informative !  Keep on posting .

回覆

hive boss war commander bases
hive boss war commander bases United States
2020/12/4 下午 09:25:42 #

obviously like your web site but you need to take a look at the spelling on quite a few of your posts. Several of them are rife with spelling problems and I in finding it very bothersome to tell the reality nevertheless I will surely come back again.

回覆

war commander base setup- defense type
war commander base setup- defense type United States
2020/12/4 下午 09:27:22 #

Just  wanna  admit that this is  very helpful , Thanks for taking your time to write this.

回覆

hive boss war commander bases
hive boss war commander bases United States
2020/12/4 下午 09:28:11 #

I gotta  favorite this website  it seems  handy   handy

回覆

war commander download
war commander download United States
2020/12/4 下午 09:29:51 #

Thank you for the sensible critique. Me & my neighbor were just preparing to do a little research on this. We got a grab a book from our local library but I think I learned more clear from this post. I'm very glad to see such great info being shared freely out there.

回覆

war commander base setup 2019
war commander base setup 2019 United States
2020/12/4 下午 09:30:48 #

Regards  for helping out,  fantastic   information.

回覆

war commander pc
war commander pc United States
2020/12/4 下午 09:32:27 #

Enjoyed  looking at  this, very good stuff,  regards . "Nothing happens to any thing which that thing is not made by nature to bear." by Marcus Aurelius Antoninus.

回覆

war commander
war commander United States
2020/12/4 下午 09:33:32 #

Perfectly   pent   subject matter,  appreciate it for  entropy.

回覆

war commander base designs
war commander base designs United States
2020/12/4 下午 09:33:33 #

Regards for helping out, fantastic information. "Those who restrain desire, do so because theirs is weak enough to be restrained." by William Blake.

回覆

war commander base design
war commander base design United States
2020/12/4 下午 09:35:14 #

I like this post, enjoyed this one  appreciate it for posting .

回覆

war commander forum
war commander forum United States
2020/12/4 下午 09:37:50 #

Its  great  as your other  articles  : D, thanks  for posting . "Too much sensibility creates unhappiness too much insensibility leads to crime." by Charles Maurice de Talleyrand.

回覆

war commander base v
war commander base v United States
2020/12/4 下午 09:42:57 #

Fantastic website. A lot of helpful information here. I am sending it to a few pals ans also sharing in delicious. And obviously, thanks in your effort!

回覆

best war commander bases
best war commander bases United States
2020/12/4 下午 09:43:57 #

Hey There. I found your blog using msn. This is a really well written article. I’ll be sure to bookmark it and return to read more of your useful information. Thanks for the post. I’ll definitely return.

回覆

war commander base setup 2019
war commander base setup 2019 United States
2020/12/4 下午 09:45:43 #

you're in point of fact a excellent webmaster. The web site loading velocity is incredible. It sort of feels that you are doing any unique trick. Also, The contents are masterwork. you have done a wonderful activity in this topic!

回覆

war commander thorium dawn
war commander thorium dawn United States
2020/12/4 下午 09:48:35 #

Very interesting info!Perfect just what I was looking for!

回覆

war commander game
war commander game United States
2020/12/4 下午 09:49:26 #

Dead  composed   written content , thanks  for information .

回覆

war commander facebook
war commander facebook United States
2020/12/4 下午 09:51:12 #

You are my  aspiration , I  possess few blogs  and  occasionally  run out from to post .I think  this  internet site  has  some  real   superb  info  for everyone. "The foundation of every state is the education of its youth." by Diogenes.

回覆

war commander thorium dawn
war commander thorium dawn United States
2020/12/4 下午 09:52:02 #

hi!,I like your writing very so much! percentage we keep up a correspondence extra approximately your article on AOL? I need an expert in this house to solve my problem. Maybe that is you! Having a look ahead to see you.

回覆

war commander base layout
war commander base layout United States
2020/12/4 下午 09:52:02 #

magnificent issues altogether, you just won a emblem new reader. What could you recommend in regards to your post that you just made some days ago? Any positive?

回覆

war commander base defence
war commander base defence United States
2020/12/4 下午 09:54:02 #

I  believe  you have mentioned  some very interesting  details , thanks  for the post.

回覆

war commander cheats
war commander cheats United States
2020/12/4 下午 09:56:43 #

Wow! This can be one particular of the most helpful blogs We've ever arrive across on this subject. Basically Magnificent. I am also an expert in this topic so I can understand your effort.

回覆

war commander base setup 2019
war commander base setup 2019 United States
2020/12/4 下午 10:02:35 #

I have to express some appreciation to you just for bailing me out of this type of setting. Because of surfing around throughout the internet and meeting solutions that were not productive, I was thinking my life was done. Living without the answers to the difficulties you've solved through your main short post is a crucial case, as well as those which could have in a wrong way affected my career if I hadn't noticed your website. Your actual competence and kindness in playing with every part was vital. I'm not sure what I would have done if I had not come across such a stuff like this. I'm able to at this moment relish my future. Thank you so much for your expert and results-oriented guide. I won't hesitate to propose your web site to anyone who ought to have direction about this topic.

回覆

war commander wiki
war commander wiki United States
2020/12/4 下午 10:05:06 #

I really appreciate this post. I've been looking all over for this! Thank goodness I found it on Bing. You have made my day! Thanks again!

回覆

war commander nova
war commander nova United States
2020/12/4 下午 10:07:35 #

I dugg some of you post as I  cerebrated they were  handy   invaluable

回覆

war commander base
war commander base United States
2020/12/4 下午 10:15:40 #

Hi, Neat post. There's an issue together with your site in web explorer, might check this… IE nonetheless is the market leader and a huge section of folks will pass over your wonderful writing because of this problem.

回覆

war commander base setup- defense type
war commander base setup- defense type United States
2020/12/4 下午 10:20:50 #

I've read a few excellent stuff here. Definitely value bookmarking for revisiting. I wonder how a lot attempt you place to create this kind of excellent informative site.

回覆

war commander facebook
war commander facebook United States
2020/12/4 下午 10:27:23 #

I loved as much as you'll receive carried out right here. The sketch is tasteful, your authored material stylish. nonetheless, you command get bought an edginess over that you wish be delivering the following. unwell unquestionably come further formerly again as exactly the same nearly a lot often inside case you shield this hike.

回覆

war commander base layout
war commander base layout United States
2020/12/4 下午 10:31:57 #

I  believe  you have mentioned  some very interesting  details ,  regards  for the post.

回覆

war commander base designs
war commander base designs United States
2020/12/4 下午 10:35:28 #

Merely  wanna  remark  that you have a very nice   site, I   the  design and style  it really  stands out.

回覆

war commander cheats
war commander cheats United States
2020/12/4 下午 10:40:06 #

I’m not sure where you are getting your information, but good topic. I needs to spend some time learning more or understanding more. Thanks for great info I was looking for this information for my mission.

回覆

war commander base design 2020
war commander base design 2020 United States
2020/12/4 下午 10:45:31 #

I have recently started a website, the info you offer on this website has helped me tremendously. Thanks for all of your time & work. "A creative man is motivated by the desire to achieve, not by the desire to beat others." by Ayn Rand.

回覆

war commander wiki
war commander wiki United States
2020/12/4 下午 10:50:51 #

Utterly   composed   subject matter,  regards  for information .

回覆

war commander raid bases
war commander raid bases United States
2020/12/4 下午 10:51:34 #

Just wanna comment on few general things, The website layout is perfect, the written content is real superb. "By following the concept of 'one country, two systems,' you don't swallow me up nor I you." by Deng Xiaoping.

回覆

war commander pc
war commander pc United States
2020/12/4 下午 10:51:51 #

Very interesting information!Perfect just what I was looking for!

回覆

war commander base setup 2019
war commander base setup 2019 United States
2020/12/4 下午 10:53:22 #

It is truly a nice and helpful piece of info. I am glad that you simply shared this useful information with us. Please stay us informed like this. Thank you for sharing.

回覆

war commander showdown
war commander showdown United States
2020/12/4 下午 10:56:12 #

I gotta  favorite this  site it seems  extremely helpful  very helpful

回覆

war commander bases
war commander bases United States
2020/12/4 下午 11:01:28 #

you are in reality a excellent webmaster. The site loading speed is incredible. It kind of feels that you are doing any unique trick. In addition, The contents are masterpiece. you've done a fantastic job on this topic!

回覆

war commander showdown
war commander showdown United States
2020/12/4 下午 11:07:52 #

I do not even know how I ended up here, but I thought this post was great. I do not know who you are but definitely you are going to a famous blogger if you are not already ;) Cheers!

回覆

war commander thorium dawn
war commander thorium dawn United States
2020/12/4 下午 11:09:32 #

I dugg some of you post as I thought  they were  handy   very helpful

回覆

Dead written   subject matter,  appreciate it for  entropy.

回覆

war commander
war commander United States
2020/12/4 下午 11:45:54 #

Absolutely   indited content ,  regards  for  entropy.

回覆

war commander base setup 2019
war commander base setup 2019 United States
2020/12/4 下午 11:48:35 #

Thanks for sharing superb informations. Your site is so cool. I'm impressed by the details that you have on this website. It reveals how nicely you understand this subject. Bookmarked this web page, will come back for extra articles. You, my friend, ROCK! I found simply the information I already searched all over the place and simply couldn't come across. What an ideal web site.

回覆

war commander herald
war commander herald United States
2020/12/4 下午 11:51:37 #

I was recommended this blog by my cousin. I'm not sure whether this post is written by him as nobody else know such detailed about my problem. You are wonderful! Thanks!

回覆

war commander base defense
war commander base defense United States
2020/12/4 下午 11:53:35 #

My husband and i got  thankful when Ervin could do his studies out of the precious recommendations he was given when using the web page. It is now and again perplexing just to find yourself offering guides  some other people might have been selling. We really understand we need the website owner to give thanks to for this. The specific explanations you've made, the simple site navigation, the relationships you will assist to promote - it is most overwhelming, and it is assisting our son and our family do think this topic is enjoyable, which is truly essential. Thanks for all the pieces!

回覆

war commander facebook
war commander facebook United States
2020/12/4 下午 11:54:33 #

You have brought up a very good  points ,  thankyou  for the post.

回覆

war commander base setup 2020
war commander base setup 2020 United States
2020/12/4 下午 11:56:25 #

My brother recommended I might like this web site. He was entirely right. This post truly made my day. You can not imagine just how much time I had spent for this info! Thanks!

回覆

war commander youtube
war commander youtube United States
2020/12/4 下午 11:57:11 #

I like what you guys are up also. Such clever work and reporting! Keep up the superb works guys I have incorporated you guys to my blogroll. I think it'll improve the value of my website Smile.

回覆

war commander base layout
war commander base layout United States
2020/12/4 下午 11:59:07 #

Some genuinely excellent content on this internet site, thanks for contribution. "Better shun the bait, than struggle in the snare." by John Dryden.

回覆

war commander showdown
war commander showdown United States
2020/12/5 上午 12:04:38 #

I have been absent for some time, but now I remember why I used to love this web site. Thanks, I'll try and check back more frequently. How frequently you update your website?

回覆

war commander base 55
war commander base 55 United States
2020/12/5 上午 12:18:34 #

Really  nice design  and  excellent  content ,  nothing at all  else we  require : D.

回覆

I’m not sure where you are getting your information, but great topic. I needs to spend some time learning much more or understanding more. Thanks for fantastic info I was looking for this info for my mission.

回覆

war commander base defense layout
war commander base defense layout United States
2020/12/5 上午 12:26:57 #

I truly enjoy reading on this website, it holds good content. "One should die proudly when it is no longer possible to live proudly." by Friedrich Wilhelm Nietzsche.

回覆

I loved as much as you'll receive carried out right here. The sketch is tasteful, your authored material stylish. nonetheless, you command get bought an edginess over that you wish be delivering the following. unwell unquestionably come further formerly again since exactly the same nearly a lot often inside case you shield this increase.

回覆

war commander base
war commander base United States
2020/12/5 上午 12:58:41 #

you are in point of fact a excellent webmaster. The website loading velocity is amazing. It seems that you are doing any unique trick. Moreover, The contents are masterwork. you've done a wonderful activity in this subject!

回覆

Keep up the  superb  work , I read few  articles  on this website  and I  conceive that your  website  is  rattling interesting and  holds   bands of  excellent  info .

回覆

war commander
war commander United States
2020/12/5 上午 01:57:40 #

Appreciate it for helping out, wonderful information. "In case of dissension, never dare to judge till you've heard the other side." by Euripides.

回覆

war commander rogue assault
war commander rogue assault United States
2020/12/5 上午 01:59:35 #

I'll immediately clutch your rss feed as I can not find your email subscription link or newsletter service. Do you've any? Kindly allow me know so that I could subscribe. Thanks.

回覆

war commander base designs
war commander base designs United States
2020/12/5 上午 02:02:28 #

You can definitely see your enthusiasm in the paintings you write. The arena hopes for more passionate writers like you who are not afraid to mention how they believe. At all times go after your heart. "Experience is a good school, but the fees are high." by Heinrich Heine.

回覆

I think this is one of the most vital info for me. And i'm glad reading your article. But should remark on few general things, The website style is great, the articles is really great : D. Good job, cheers

回覆

war commander bases
war commander bases United States
2020/12/5 上午 02:53:44 #

I precisely wished to say thanks all over again. I'm not certain the things that I could possibly have used without these techniques discussed by you concerning this subject matter. It had been a real horrifying circumstance in my circumstances, nevertheless encountering the expert approach you resolved it made me to cry with joy. I'm happier for the support and as well , trust you really know what a great job that you're getting into teaching people via a blog. I am certain you have never got to know all of us.

回覆

war commander base setup
war commander base setup United States
2020/12/5 上午 03:02:41 #

We're a group of volunteers and opening a new scheme in our community. Your site offered us with valuable information to work on. You have done an impressive job and our entire community will be thankful to you.

回覆

war commander raid bases
war commander raid bases United States
2020/12/5 上午 03:12:20 #

I will right away clutch your rss feed as I can not to find your email subscription hyperlink or newsletter service. Do you have any? Please permit me know so that I may subscribe. Thanks.

回覆

war commander wiki
war commander wiki United States
2020/12/5 上午 03:23:23 #

I went over this web site and I think you have a lot of good info, bookmarked (:.

回覆

war commander bases
war commander bases United States
2020/12/5 上午 03:34:45 #

I like this post, enjoyed this one appreciate it for posting. "To affect the quality of the day that is the art of life." by Henry David Thoreau.

回覆

war commander forum
war commander forum United States
2020/12/5 上午 04:21:59 #

What i do not realize is in reality how you are not really a lot more neatly-preferred than you may be now. You are so intelligent. You know therefore considerably relating to this topic, made me in my opinion believe it from numerous varied angles. Its like men and women aren't involved until it's something to do with Lady gaga! Your own stuffs excellent. At all times care for it up!

回覆

war commander
war commander United States
2020/12/5 上午 05:32:47 #

Very   superb   information can be found on  weblog . "Often the test of courage is not to die but to live." by Conte Vittorio Alfieri.

回覆

war commander
war commander United States
2020/12/5 上午 05:46:08 #

I like this  web site very much, Its a  real  nice  situation to read and  find  info . "Do pleasant things yourself, but unpleasant things through others." by Baltasar Gracian.

回覆

war commander
war commander United States
2020/12/5 上午 05:57:11 #

Thanks for the sensible critique. Me and my neighbor were just preparing to do some research about this. We got a grab a book from our area library but I think I learned more clear from this post. I'm very glad to see such fantastic info being shared freely out there.

回覆

war commander
war commander United States
2020/12/5 上午 06:15:14 #

I think this is among the most significant info for me. And i am glad reading your article. But should remark on some general things, The web site style is wonderful, the articles is really nice : D. Good job, cheers

回覆

war commander
war commander United States
2020/12/5 上午 06:22:36 #

Very interesting information!Perfect just what I was looking for!

回覆

war commander
war commander United States
2020/12/5 上午 07:16:33 #

Some genuinely nice and utilitarian info on this site, besides I conceive the style holds superb features.

回覆

war commander
war commander United States
2020/12/5 上午 07:17:26 #

I like the efforts you have put in this, thanks for all the great articles.

回覆

war commander
war commander United States
2020/12/5 上午 07:25:17 #

I gotta  favorite this website  it seems  invaluable   extremely helpful

回覆

war commander
war commander United States
2020/12/5 上午 07:40:14 #

You can definitely see your skills within the work you write. The sector hopes for more passionate writers like you who are not afraid to mention how they believe. Always follow your heart. "Man is the measure of all things." by Protagoras.

回覆

war commander
war commander United States
2020/12/5 上午 08:10:09 #

Appreciate it for helping out, great info. "Whoever obeys the gods, to him they particularly listen." by Homer.

回覆

war commander
war commander United States
2020/12/5 上午 08:12:41 #

What i don't understood is in reality how you're now not really a lot more smartly-liked than you may be right now. You are very intelligent. You recognize therefore considerably on the subject of this matter, made me in my opinion believe it from so many numerous angles. Its like women and men aren't fascinated until it is something to do with Lady gaga! Your personal stuffs nice. Always take care of it up!

回覆

war commander
war commander United States
2020/12/5 上午 08:21:58 #

Very interesting info!Perfect just what I was looking for!

回覆

war commander
war commander United States
2020/12/5 上午 08:24:40 #

hello!,I really like your writing very a lot! proportion we be in contact extra about your article on AOL? I need an expert on this space to resolve my problem. May be that's you! Looking ahead to look you.

回覆

war commander
war commander United States
2020/12/5 上午 08:26:33 #

Just  a smiling visitor  here to share the love (:, btw great   style .

回覆

war commander
war commander United States
2020/12/5 上午 08:34:35 #

It's truly a nice and useful piece of info. I am glad that you simply shared this helpful info with us. Please stay us up to date like this. Thanks for sharing.

回覆

war commander
war commander United States
2020/12/5 上午 08:48:00 #

F*ckin' remarkable issues here. I'm very satisfied to look your post. Thanks so much and i'm taking a look ahead to contact you. Will you kindly drop me a e-mail?

回覆

war commander
war commander United States
2020/12/5 上午 09:07:00 #

Appreciate it for helping out,  wonderful  information.

回覆

war commander
war commander United States
2020/12/5 上午 09:14:55 #

What i do not realize is if truth be told how you are now not really much more well-favored than you may be right now. You are very intelligent. You realize therefore considerably with regards to this matter, made me in my opinion consider it from a lot of various angles. Its like women and men aren't involved except it's one thing to do with Woman gaga! Your individual stuffs nice. At all times care for it up!

回覆

war commander
war commander United States
2020/12/5 上午 09:25:57 #

Hi there very nice web site!! Man .. Excellent .. Wonderful .. I will bookmark your web site and take the feeds additionally…I am happy to search out a lot of useful info here within the submit, we want work out extra techniques in this regard, thanks for sharing.

回覆

war commander
war commander United States
2020/12/5 上午 09:31:37 #

Thank you for the good writeup. It in fact was a amusement account it. Look advanced to more added agreeable from you! However, how can we communicate?

回覆

war commander
war commander United States
2020/12/5 上午 09:36:40 #

Only  wanna  input on few general things, The website  pattern  is perfect, the  written content  is  really  good  : D.

回覆

war commander
war commander United States
2020/12/5 上午 09:39:27 #

Keep up the  wonderful work , I read few  articles  on this website  and I think  that your  web blog  is very  interesting and  has got   sets  of  superb  info .

回覆

war commander
war commander United States
2020/12/5 上午 09:40:26 #

Very interesting subject, regards for putting up.

回覆

war commander
war commander United States
2021/1/8 上午 09:29:41 #

I got what you  intend,  appreciate it for posting .Woh I am  lucky  to find this website through google. "It is a very hard undertaking to seek to please everybody." by Publilius Syrus.

回覆

war commander
war commander United States
2021/1/8 上午 09:38:13 #

A lot of thanks for all of your efforts on this website. My mum delights in going through investigation and it is easy to see why. My spouse and i learn all of the lively way you convey very helpful items through this web blog and even encourage contribution from others on this concern and our favorite child is now studying so much. Enjoy the remaining portion of the new year. You are always conducting a really good job.

回覆

war commander
war commander United States
2021/1/8 上午 09:38:42 #

I like this weblog so much, saved to favorites. "I don't care what is written about me so long as it isn't true." by Dorothy Parker.

回覆

war commander
war commander United States
2021/1/8 上午 09:57:59 #

I do consider all the ideas you've presented in your post. They're very convincing and will certainly work. Still, the posts are very quick for beginners. May you please prolong them a little from next time? Thank you for the post.

回覆

新增評論




  Country flag
biuquote
  • 評論
  • 線上預覽
Loading






NET Magazine國際中文電子雜誌

NET Magazine國際中文電子版雜誌,由恆逸資訊創立於2000,自發刊日起迄今已發行超過500篇.NET相關技術文章,擁有超過40000名註冊讀者群。NET Magazine國際中文電子版雜誌希望藉於電子雜誌與NET Developer達到共同學習與技術新知分享,歡迎每一位對.NET 技術有興趣的朋友們多多支持本雜誌,讓作者群們可以有持續性的動力繼續爬文。<請加入免費訂閱>

月分類Month List