
# IPartChoice2 interface

*No description yet.*

```csharp
public interface IPartChoice2
```

**Namespace:** SCH · **Assembly:** Altium.SDK.Interfaces

## Properties

| Property | Type | Access | Description |
| --- | --- | --- | --- |
| [Action](#action) | [TActionPartChoice](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/TActionPartChoice.md) | get; set |  |
| [Description](#description) | `string` | get; set |  |
| [GUID](#guid) | `string` | get; set |  |
| [ItemGUID](#itemguid) | `string` | get; set |  |
| [ManufacturerName](#manufacturername) | `string` | get; set |  |
| [MPN](#mpn) | `string` | get; set |  |
| [PartChoiceType](#partchoicetype) | `int` | get; set |  |
| [PartID](#partid) | `string` | get; set |  |
| [PartSourceGUID](#partsourceguid) | `string` | get; set |  |
| [PartSourceName](#partsourcename) | `string` | get; set |  |

### Action

*No description yet.*

```csharp
TActionPartChoice GetAction();
void SetAction(TActionPartChoice argValue);
```

**Type:** [TActionPartChoice](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/TActionPartChoice.md) · **Access:** read/write

The accessors are extension methods of `IPartChoice2Helper` (`using SCH;`).

### Description

*No description yet.*

```csharp
string GetDescription();
void SetDescription(string argValue);
```

**Type:** `string` · **Access:** read/write

**Examples:** [Extension_PartChoice](https://github.com/AltiumDeveloper/ad-sdk-examples/blob/5b144f54740a53ec578b3b6c3f902b831e0b1144/Extension_PartChoice/Source%20Code/Commands.cs#L58)

### GUID

*No description yet.*

```csharp
string GetGUID();
void SetGUID(string argValue);
```

**Type:** `string` · **Access:** read/write

### ItemGUID

*No description yet.*

```csharp
string GetItemGUID();
void SetItemGUID(string argValue);
```

**Type:** `string` · **Access:** read/write

### ManufacturerName

*No description yet.*

```csharp
string GetManufacturerName();
void SetManufacturerName(string argValue);
```

**Type:** `string` · **Access:** read/write

**Examples:** [Extension_PartChoice](https://github.com/AltiumDeveloper/ad-sdk-examples/blob/5b144f54740a53ec578b3b6c3f902b831e0b1144/Extension_PartChoice/Source%20Code/Commands.cs#L58)

### MPN

*No description yet.*

```csharp
string GetMPN();
void SetMPN(string argValue);
```

**Type:** `string` · **Access:** read/write

**Examples:** [Extension_PartChoice](https://github.com/AltiumDeveloper/ad-sdk-examples/blob/5b144f54740a53ec578b3b6c3f902b831e0b1144/Extension_PartChoice/Source%20Code/Commands.cs#L58)

### PartChoiceType

*No description yet.*

```csharp
int GetPartChoiceType();
void SetPartChoiceType(int argValue);
```

**Type:** `int` · **Access:** read/write

### PartID

*No description yet.*

```csharp
string GetPartID();
void SetPartID(string argValue);
```

**Type:** `string` · **Access:** read/write

**Examples:** [Extension_PartChoice](https://github.com/AltiumDeveloper/ad-sdk-examples/blob/5b144f54740a53ec578b3b6c3f902b831e0b1144/Extension_PartChoice/Source%20Code/Commands.cs#L58)

### PartSourceGUID

*No description yet.*

```csharp
string GetPartSourceGUID();
void SetPartSourceGUID(string argValue);
```

**Type:** `string` · **Access:** read/write

### PartSourceName

*No description yet.*

```csharp
string GetPartSourceName();
void SetPartSourceName(string argValue);
```

**Type:** `string` · **Access:** read/write

## Returned by

[IComponentDynamicData.GetPartChoice](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IComponentDynamicData.md#getpartchoice), [IPartChoice2List.GetPartChoice](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPartChoice2List.md#getpartchoice)

## Examples

Used in the SDK examples: [Extension_PartChoice](https://github.com/AltiumDeveloper/ad-sdk-examples/blob/5b144f54740a53ec578b3b6c3f902b831e0b1144/Extension_PartChoice/Source%20Code/Commands.cs#L56).
