BaseHasKeys Method
.NET Framework Class Library
NameObjectCollectionBase..::.BaseHasKeys Method

Gets a value indicating whether the NameObjectCollectionBase instance contains entries whose keys are not nullNothingnullptra null reference (Nothing in Visual Basic).

Namespace:  System.Collections.Specialized
Assembly:  System (in System.dll)
Visual Basic (Declaration)
Protected Function BaseHasKeys As Boolean
Visual Basic (Usage)
Dim returnValue As Boolean

returnValue = Me.BaseHasKeys()
C#
protected bool BaseHasKeys()
Visual C++
protected:
bool BaseHasKeys()
JScript
protected function BaseHasKeys() : boolean

Return Value

Type: System..::.Boolean
true if the NameObjectCollectionBase instance contains entries whose keys are not nullNothingnullptra null reference (Nothing in Visual Basic); otherwise, false.

This method is an O(1) operation.

The following code example uses BaseHasKeys to determine if the collection contains keys that are not nullNothingnullptra null reference (Nothing in Visual Basic).

Visual Basic
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

   ' Creates an empty collection.
   Public Sub New()
   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

   ' Gets a value indicating whether the collection contains keys that are not a null reference.
   Public ReadOnly Property HasKeys() As [Boolean]
      Get
         Return Me.BaseHasKeys()
      End Get
   End Property

End Class 'MyCollection


Public Class SamplesNameObjectCollectionBase   

   Public Shared Sub Main()

      ' Creates an empty MyCollection instance.
      Dim myCol As New MyCollection()
      Console.WriteLine("Initial state of the collection (Count = {0}):", myCol.Count)
      PrintKeysAndValues(myCol)
      Console.WriteLine("HasKeys? {0}", myCol.HasKeys)

      Console.WriteLine()

      ' Adds an item to the collection.
      myCol.Add("blue", "sky")
      Console.WriteLine("Initial state of the collection (Count = {0}):", myCol.Count)
      PrintKeysAndValues(myCol)
      Console.WriteLine("HasKeys? {0}", myCol.HasKeys)

   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.
'
'Initial state of the collection (Count = 0):
'HasKeys? False
'
'Initial state of the collection (Count = 1):
'[0] : blue, sky
'HasKeys? True

C#
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 );
      }
   }

   // Creates an empty collection.
   public MyCollection()  {
   }

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

   // Gets a value indicating whether the collection contains keys that are not a null reference.
   public Boolean HasKeys  {
      get  {
         return( this.BaseHasKeys() );
      }
   }

}

public class SamplesNameObjectCollectionBase  {

   public static void Main()  {

      // Creates an empty MyCollection instance.
      MyCollection myCol = new MyCollection();
      Console.WriteLine( "Initial state of the collection (Count = {0}):", myCol.Count );
      PrintKeysAndValues( myCol );
      Console.WriteLine( "HasKeys? {0}", myCol.HasKeys );

      Console.WriteLine();

      // Adds an item to the collection.
      myCol.Add( "blue", "sky" );
      Console.WriteLine( "Initial state of the collection (Count = {0}):", myCol.Count );
      PrintKeysAndValues( myCol );
      Console.WriteLine( "HasKeys? {0}", myCol.HasKeys );

   }

   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.

Initial state of the collection (Count = 0):
HasKeys? False

Initial state of the collection (Count = 1):
[0] : blue, sky
HasKeys? True

*/
Visual C++
#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 );
      }
   }

   // Creates an empty collection.
   MyCollection()  {
      _de = gcnew DictionaryEntry();
   }

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

   // Gets a value indicating whether the collection contains keys that are not a null reference.
   property Boolean HasKeys  {
      Boolean get()  {
         return( this->BaseHasKeys() );
      }
   }
};

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()  {

   // Creates an empty MyCollection instance.
   MyCollection^ myCol = gcnew MyCollection();
   Console::WriteLine( "Initial state of the collection (Count = {0}):", myCol->Count );
   PrintKeysAndValues( myCol );
   Console::WriteLine( "HasKeys? {0}", myCol->HasKeys );

   Console::WriteLine();

   // Adds an item to the collection.
   myCol->Add( "blue", "sky" );
   Console::WriteLine( "Initial state of the collection (Count = {0}):", myCol->Count );
   PrintKeysAndValues( myCol );
   Console::WriteLine( "HasKeys? {0}", myCol->HasKeys );

}

/*
This code produces the following output.

Initial state of the collection (Count = 0):
HasKeys? False

Initial state of the collection (Count = 1):
[0] : blue, sky
HasKeys? True

*/

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360, Zune

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 3.5, 2.0, 1.0

XNA Framework

Supported in: 3.0, 2.0, 1.0
Tags What's this?: Add a tag
Community Content   What is Community Content?
Add new content RSS  Annotations
Processing
Page view tracker