2016-03-27 19 views
0

在我的項目中,我需要創建很多(約100)非常類似的變量。有沒有模板樣式或我可以使用的東西?c#如何創建大量類似的變量

private double _num; 
public double Num 
{ 
    get { return _num; } 
    set 
    { 
     if (value != _num) 
     { 
      _num = value; 
      DisplayNum = _num; 
     } 
    } 
} 

private Brush _numColor = Brushes.Black; 
public Brush NumColor 
{ 
    get { return _numColor; } 
    set 
    { 
     if (value != _numColor) 
     { 
      _numColor = value; 
      RaisePropertyChanged("NumColor"); 
     } 
    } 
} 

private double _displayNum; 
public double DisplayNum 
{ 
    get { return _displayNum; } 
    set 
    { 
     if (value != _displayNum) 
     { 
      _displayNum = value; 
      RaisePropertyChanged("DisplayNum"); 
     } 
    } 
} 

我知道我可以使用數組等,但這不是我想要的。

我想做一些像 「創建新的字符串統計」,它會創建上述但在編譯時使用「stat」而不是「num」和「string」而不是「double」創建。

任何想法?

+0

您正在尋找代碼片段。但是,你可能不應該那樣做。你可能需要'ICustomTypeDescriptor'。 – SLaks

+0

謝謝。我會研究這些。不知道我想要的是什麼適當的術語。 –

回答

0

代碼片段的確是要走的路,這裏是一個我寫了INPC性質:

<?xml version="1.0" encoding="utf-8" ?> 
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> 
    <CodeSnippet Format="1.0.0"> 
     <Header> 
      <Title>propc</Title> 
      <Shortcut>propc</Shortcut> 
      <Description>Code snippet for property and backing field with change notification</Description> 
      <Author>Mark Feldman</Author> 
      <SnippetTypes> 
       <SnippetType>Expansion</SnippetType> 
      </SnippetTypes> 
     </Header> 
     <Snippet> 
      <Declarations> 
       <Literal> 
        <ID>type</ID> 
        <ToolTip>Property type</ToolTip> 
        <Default>int</Default> 
       </Literal> 
       <Literal> 
        <ID>property</ID> 
        <ToolTip>Property name</ToolTip> 
        <Default>MyProperty</Default> 
       </Literal> 
      </Declarations> 
      <Code Language="csharp"><![CDATA[private $type$ _$property$; 
     public $type$ $property$ 
     { 
      get { return this._$property$;} 
      set { this._$property$ = value; RaisePropertyChanged(); } 
     } 
     $end$]]> 
      </Code> 
     </Snippet> 
    </CodeSnippet> 
</CodeSnippets> 

我結合這「propc」,所以我必須是那種類型DevStudio的,按Tab鍵然後根據需要填寫每個字段。

+0

謝謝。我查看了片段,並將它們計算出來。很好,解決了我的問題。 –