作者 主題: 屬性可以串接變數給值嗎  (閱讀 7504 次)

0 會員 與 1 訪客 正在閱讀本文。

jackychien1

  • 憂鬱的高中生
  • ***
  • 文章數: 90
    • 檢視個人資料
屬性可以串接變數給值嗎
« 於: 2010-12-14 01:11 »
各位高手  請問屬性可以用for給值嗎
例如我有一個資料物件  裡面有10個屬性 int0~int10
有沒有辦法動態串接int(i)    

myclass k = new myclass();

for( i=0 ;  i < 11; i++;)
{
k.int+i=1;
}



我想問的是.net裡面有沒有這樣的寫法
我想問的重點就是紅色字體的部分
VB.NET或是c#的範例都可以  謝謝

Yamaka

  • 俺是博士!
  • *****
  • 文章數: 4913
    • 檢視個人資料
    • http://www.ecmagic.com
回覆: 屬性可以串接變數給值嗎
« 回覆 #1 於: 2010-12-14 02:12 »
各位高手  請問屬性可以用for給值嗎
例如我有一個資料物件  裡面有10個屬性 int0~int10
有沒有辦法動態串接int(i)    

myclass k = new myclass();

for( i=0 ;  i < 11; i++;)
{
k.int+i=1;
}

我想問的是.net裡面有沒有這樣的寫法
我想問的重點就是紅色字體的部分
VB.NET或是c#的範例都可以  謝謝

試試用陣列吧

洋蔥叔叔

  • 區域板主
  • 鑽研的研究生
  • *****
  • 文章數: 830
    • 檢視個人資料
    • 洋蔥叔叔的隨意漫談電腦、網路、.NET、軟體本地化、雜七雜八
回覆: 屬性可以串接變數給值嗎
« 回覆 #2 於: 2010-12-14 18:06 »
可以利用 Reflection 以名稱來存取成員

代碼: [選擇]
myclass k = new myclass();
Type t = k.GetType();
System.Reflection.PropertyInfo p;

for( i=0 ;  i < 11; i++;)
{
p = t.GetProperty("int" + i.ToString());
p.SetValue(k, 1, Nothing);
}