INameCreationService.CreateName(IContainer, Type) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Belirtilen kapsayıcıdaki tüm bileşenler için benzersiz olan yeni bir ad oluşturur.
public:
System::String ^ CreateName(System::ComponentModel::IContainer ^ container, Type ^ dataType);
public string CreateName (System.ComponentModel.IContainer container, Type dataType);
public string CreateName (System.ComponentModel.IContainer? container, Type dataType);
abstract member CreateName : System.ComponentModel.IContainer * Type -> string
Public Function CreateName (container As IContainer, dataType As Type) As String
Parametreler
- container
- IContainer
Yeni nesnenin eklendiği kapsayıcı.
- dataType
- Type
Adı alan nesnenin veri türü.
Döndürülenler
Veri türü için benzersiz bir ad.
Örnekler
Aşağıdaki kod örneği örnek bir INameCreationService.CreateName yöntem uygulaması sağlar. yöntemi, belirtilen kapsayıcı içindeki bileşenlerin adları için benzersiz olan belirtilen türün adını temel alan bir ad oluşturabilir.
// Creates an identifier for a particular data type that does not conflict
// with the identifiers of any components in the specified collection.
virtual String^ CreateName( System::ComponentModel::IContainer^ container, System::Type^ dataType )
{
// Create a basic type name string.
String^ baseName = dataType->Name;
int uniqueID = 1;
bool unique = false;
// Continue to increment uniqueID numeral until a
// unique ID is located.
while ( !unique )
{
unique = true;
// Check each component in the container for a matching
// base type name and unique ID.
for ( int i = 0; i < container->Components->Count; i++ )
{
// Check component name for match with unique ID string.
if ( container->Components[ i ]->Site->Name->StartsWith( String::Concat( baseName, uniqueID ) ) )
{
// If a match is encountered, set flag to recycle
// collection, increment ID numeral, and restart.
unique = false;
uniqueID++;
break;
}
}
}
return String::Concat( baseName, uniqueID );
}
// Creates an identifier for a particular data type that does not conflict
// with the identifiers of any components in the specified collection.
public string CreateName(System.ComponentModel.IContainer container, System.Type dataType)
{
// Create a basic type name string.
string baseName = dataType.Name;
int uniqueID = 1;
bool unique = false;
// Continue to increment uniqueID numeral until a
// unique ID is located.
while( !unique )
{
unique = true;
// Check each component in the container for a matching
// base type name and unique ID.
for(int i=0; i<container.Components.Count; i++)
{
// Check component name for match with unique ID string.
if( container.Components[i].Site.Name.StartsWith(baseName+uniqueID.ToString()) )
{
// If a match is encountered, set flag to recycle
// collection, increment ID numeral, and restart.
unique = false;
uniqueID++;
break;
}
}
}
return baseName+uniqueID.ToString();
}
' Creates an identifier for a particular data type that does not conflict
' with the identifiers of any components in the specified collection
Public Function CreateName(ByVal container As System.ComponentModel.IContainer, ByVal dataType As System.Type) As String Implements INameCreationService.CreateName
' Create a basic type name string
Dim baseName As String = dataType.Name
Dim uniqueID As Integer = 1
Dim unique As Boolean = False
' Continue to increment uniqueID numeral until a unique ID is located.
While Not unique
unique = True
' Check each component in the container for a matching
' base type name and unique ID.
Dim i As Integer
For i = 0 To container.Components.Count - 1
' Check component name for match with unique ID string.
If container.Components(i).Site.Name.StartsWith((baseName + uniqueID.ToString())) Then
' If a match is encountered, set flag to recycle
' collection, increment ID numeral, and restart.
unique = False
uniqueID += 1
Exit For
End If
Next i
End While
Return baseName + uniqueID.ToString()
End Function
Açıklamalar
Bu yöntem, belirtilen kapsayıcı içinde benzersiz olan yeni nesne için bir ad döndürür.
Uygulayanlara Notlar
Bu hizmet türü genellikle veri türünün adından benzersiz bir nesne adı oluşturmak için uygulanır ve genellikle adın benzersiz tanımlayıcı olmasını sağlayan bir sayı eklenir. Örneğin, ListBox1
bir ListBox
nesne için.