NameObjectCollectionBase.IsReadOnly プロパティとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > NameObjectCollectionBase.IsReadOnly プロパティの意味・解説 

NameObjectCollectionBase.IsReadOnly プロパティ

NameObjectCollectionBase インスタンス読み取り専用かどうかを示す値を取得または設定します

名前空間: System.Collections.Specialized
アセンブリ: System (system.dll 内)
構文構文

Dim value As Boolean

value = Me.IsReadOnly

Me.IsReadOnly = value
protected bool IsReadOnly { get;
 set; }
/** @property */
protected boolean get_IsReadOnly ()

/** @property */
protected void set_IsReadOnly (boolean value)

プロパティ
NameObjectCollectionBase インスタンス読み取り専用場合trueそれ以外場合false

解説解説
使用例使用例

読み取り専用コレクション作成する方法については、次のコード例参照してください

Imports System
Imports System.Collections
Imports System.Collections.Specialized

Public Class MyCollection
   Inherits NameObjectCollectionBase

   Private _de As New DictionaryEntry()

   ' Gets a key-and-value pair (DictionaryEntry) using an index.
   Default Public ReadOnly
 Property Item(index As Integer)
 As DictionaryEntry
      Get
         _de.Key = Me.BaseGetKey(index)
         _de.Value = Me.BaseGet(index)
         Return _de
      End Get
   End Property

   ' Adds elements from an IDictionary into the new collection.
   Public Sub New(d As
 IDictionary, bReadOnly As [Boolean])
      Dim de As DictionaryEntry
      For Each de In  d
         Me.BaseAdd(CType(de.Key, [String]), de.Value)
      Next de
      Me.IsReadOnly = bReadOnly
   End Sub 'New

   ' Adds an entry to the collection.
   Public Sub Add(key As
 [String], value As [Object])
      Me.BaseAdd(key, value)
   End Sub 'Add

End Class 'MyCollection


Public Class SamplesNameObjectCollectionBase
   

   Public Shared Sub Main()

      ' Creates and initializes a new MyCollection that is read-only.
      Dim d = New ListDictionary()
      d.Add("red", "apple")
      d.Add("yellow", "banana")
      d.Add("green", "pear")
      Dim myROCol As New
 MyCollection(d, True)

      ' Tries to add a new item.
      Try
         myROCol.Add("blue", "sky")
      Catch e As NotSupportedException
         Console.WriteLine(e.ToString())
      End Try

      ' Displays the keys and values of the MyCollection.
      Console.WriteLine("Read-Only Collection:")
      PrintKeysAndValues(myROCol)

   End Sub 'Main

   Public Shared Sub PrintKeysAndValues(myCol
 As MyCollection)
      Dim i As Integer
      For i = 0 To myCol.Count - 1
         Console.WriteLine("[{0}] : {1}, {2}", i,
 myCol(i).Key, myCol(i).Value)
      Next i
   End Sub 'PrintKeysAndValues

End Class 'SamplesNameObjectCollectionBase
 


'This code produces the following output.
'
'System.NotSupportedException: Collection is read-only.
'   at System.Collections.Specialized.NameObjectCollectionBase.BaseAdd(String
 name, Object value)
'   at SamplesNameObjectCollectionBase.Main()
'Read-Only Collection:
'[0] : red, apple
'[1] : yellow, banana
'[2] : green, pear

using System;
using System.Collections;
using System.Collections.Specialized;

public class MyCollection : NameObjectCollectionBase
  {

   private DictionaryEntry _de = new DictionaryEntry();

   // Gets a key-and-value pair (DictionaryEntry) using an index.
   public DictionaryEntry this[ int
 index ]  {
      get  {
         _de.Key = this.BaseGetKey( index );
         _de.Value = this.BaseGet( index );
         return( _de );
      }
   }

   // Adds elements from an IDictionary into the new collection.
   public MyCollection( IDictionary d, Boolean bReadOnly )  {
      foreach ( DictionaryEntry de in d ) 
 {
         this.BaseAdd( (String) de.Key, de.Value );
      }
      this.IsReadOnly = bReadOnly;
   }

   // Adds an entry to the collection.
   public void Add( String key, Object value
 )  {
      this.BaseAdd( key, value );
   }

}

public class SamplesNameObjectCollectionBase
  {

   public static void Main()
  {

      // Creates and initializes a new MyCollection that is read-only.
      IDictionary d = new ListDictionary();
      d.Add( "red", "apple" );
      d.Add( "yellow", "banana" );
      d.Add( "green", "pear" );
      MyCollection myROCol = new MyCollection( d, true
 );

      // Tries to add a new item.
      try  {
         myROCol.Add( "blue", "sky" );
      }
      catch ( NotSupportedException e )  {
         Console.WriteLine( e.ToString() );
      }

      // Displays the keys and values of the MyCollection.
      Console.WriteLine( "Read-Only Collection:" );
      PrintKeysAndValues( myROCol );

   }

   public static void PrintKeysAndValues(
 MyCollection myCol )  {
      for ( int i = 0; i < myCol.Count;
 i++ )  {
         Console.WriteLine( "[{0}] : {1}, {2}", i, myCol[i].Key, myCol[i].Value
 );
      }
   }

}


/*
This code produces the following output.

System.NotSupportedException: Collection is read-only.
   at System.Collections.Specialized.NameObjectCollectionBase.BaseAdd(String name,
 Object value)
   at SamplesNameObjectCollectionBase.Main()
Read-Only Collection:
[0] : red, apple
[1] : yellow, banana
[2] : green, pear

*/
#using <System.dll>
using namespace System;
using namespace System::Collections;
using namespace System::Collections::Specialized;

public ref class MyCollection : public
 NameObjectCollectionBase  {

private:
   DictionaryEntry^ _de;

   // Gets a key-and-value pair (DictionaryEntry) using an index.
public:
   property DictionaryEntry^ default[ int ]
  {
      DictionaryEntry^ get( int index )  {
         _de->Key = this->BaseGetKey( index );
         _de->Value = this->BaseGet( index );
         return( _de );
      }
   }

   // Adds elements from an IDictionary into the new collection.
   MyCollection( IDictionary^ d, Boolean bReadOnly )  {

      _de = gcnew DictionaryEntry();

      for each ( DictionaryEntry^ de in d )
  {
         this->BaseAdd( (String^) de->Key, de->Value
 );
      }
      this->IsReadOnly = bReadOnly;
   }

   // Adds an entry to the collection.
   void Add( String^ key, Object^ value )  {
      this->BaseAdd( key, value );
   }
};

public ref class SamplesNameObjectCollectionBase
  {

public:
   static void Main()  {

      // Creates and initializes a new MyCollection that is read-only.
      IDictionary^ d = gcnew ListDictionary();
      d->Add( "red", "apple" );
      d->Add( "yellow", "banana" );
      d->Add( "green", "pear" );
      MyCollection^ myROCol = gcnew MyCollection( d, true );

      // Tries to add a new item.
      try  {
         myROCol->Add( "blue", "sky" );
      }
      catch ( NotSupportedException^ e )  {
         Console::WriteLine( e->ToString() );
      }

      // Displays the keys and values of the MyCollection.
      Console::WriteLine( "Read-Only Collection:" );
      PrintKeysAndValues( myROCol );
   }

   static void PrintKeysAndValues( MyCollection^
 myCol )  {
      for ( int i = 0; i < myCol->Count;
 i++ )  {
         Console::WriteLine( "[{0}] : {1}, {2}", i, myCol[i]->Key, myCol[i]->Value
 );
      }
   }
};

int main()
{
    SamplesNameObjectCollectionBase::Main();
}

/*
This code produces the following output.

System.NotSupportedException: Collection is read-only.
   at System.Collections.Specialized.NameObjectCollectionBase.BaseAdd(String name,
 Object value)
   at SamplesNameObjectCollectionBase.Main()
Read-Only Collection:
[0] : red, apple
[1] : yellow, banana
[2] : green, pear

*/
import System.* ;
import System.Collections.* ;
import System.Collections.Specialized.* ;

public class MyCollection extends NameObjectCollectionBase
{
    private DictionaryEntry _de =  new DictionaryEntry();

    // Gets a key-and-value pair (DictionaryEntry) using an index.
    /** @property 
     */
    public DictionaryEntry get_Item(int index)
    {
        _de.set_Key(this.BaseGetKey(index));
        _de.set_Value(this.BaseGet(index));
        return _de ;
    } //get_Item

    // Adds elements from an IDictionary into the new collection.
    public MyCollection(IDictionary d, boolean bReadOnly) 
    {        
        IDictionaryEnumerator objEnum = d.GetEnumerator();

        while (objEnum.MoveNext()) {        
            DictionaryEntry de = (DictionaryEntry)objEnum.get_Current();
            this.BaseAdd(((String)(de.get_Key())), de.get_Value());
        }

        this.set_IsReadOnly(bReadOnly);
    } //MyCollection

    // Adds an entry to the collection.
    public void Add(String key, Object value)
    {
        this.BaseAdd(key, value);
    } //Add
} //MyCollection


public class SamplesNameObjectCollectionBase
{
    public static void main(String[]
 args)
    {
        // Creates and initializes a new MyCollection that is read-only.
        IDictionary d = new ListDictionary();
        d.Add("red", "apple");
        d.Add("yellow", "banana");
        d.Add("green", "pear");
        MyCollection myROCol =  new MyCollection(d,true);
        
        // Tries to add a new item.
        try {
            myROCol.Add("blue", "sky");
        }
        catch(NotSupportedException e) {
            Console.WriteLine(e.ToString());
        }
        
        // Displays the keys and values of the MyCollection.
        Console.WriteLine("Read-Only Collection:");
        PrintKeysAndValues(myROCol);
    } //main

    public static void PrintKeysAndValues(MyCollection
 myCol)
    {
        for(int i=0;i < myCol.get_Count();
 i++) {        
            Console.WriteLine("[{0}] : {1}, {2}",System.Convert.ToString(i)
,
                myCol.get_Item(i).get_Key(), myCol.get_Item(i).get_Value());
        } 
    } //PrintKeysAndValues
} //SamplesNameObjectCollectionBase 

/*
This code produces the following output.

System.NotSupportedException: Collection is read-only.
   at System.Collections.Specialized.NameObjectCollectionBase.BaseAdd(
String name, Object value)
   at SamplesNameObjectCollectionBase.main(String[] args)
Read-Only Collection:
[0] : red, apple
[1] : yellow, banana
[2] : green, pear

*/
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
NameObjectCollectionBase クラス
NameObjectCollectionBase メンバ
System.Collections.Specialized 名前空間


このページでは「.NET Framework クラス ライブラリ リファレンス」からNameObjectCollectionBase.IsReadOnly プロパティを検索した結果を表示しています。
Weblioに収録されているすべての辞書からNameObjectCollectionBase.IsReadOnly プロパティを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からNameObjectCollectionBase.IsReadOnly プロパティ を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

NameObjectCollectionBase.IsReadOnly プロパティのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



NameObjectCollectionBase.IsReadOnly プロパティのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS