Hashtable text=new Hashtable();
public string Text [int index]
{
   get
   {
      return text[index];
   }
}
直接return text虽然也能成功地get,但这样的话Text属性就不是只读的了。

解决方案 »

  1.   

    例如myClass下有一个Texts属性,我希望可以
    string str=myClass.Texts[i];
    但不能
    myClass.Texts[i]=str;
    也就是说Texts是一个只读属性数组。
      

  2.   

    首先你的数组是Hashtable这样的话就不可能是只读的。要不你就在写一个Readonly属性用于表示HashTable中的给个Value的只读行。否则在Hashtable中是无法实现的。
      

  3.   

    我知道Hashtable无法实现,所以问有没有其它办法实现啊。
    另外,Hashtable有一个IsReadOnly属性,但只能读不能写,那它有没有用?
      

  4.   

    哎~~~刚才试了一下,用索引器也不是太好,而且还要自己再上面封一层,要不,建议楼主用方法,呵呵~~~~public string GetText(int index)
    {
         return .....
      

  5.   

    自己看吧,里面有介绍http://www.csafe.cn/default.asp?cateID=17
      

  6.   

    没看到有关于这个问题的介绍啊。
    .net里面有类似IReadonlyDictionary的接口吗?
      

  7.   

    myClass.Texts[i]=str;
    如果你的Texts只定义get过程,上面那句可以编译通过?