

Public NotInheritable Class TaskProjectItem Inherits ArcGIS.Desktop.Core.Item Implements ArcGIS.Desktop.Core.IMetadata, ArcGIS.Desktop.Core.IProjectItem, ArcGIS.Desktop.Core.IProjectMultiItem, System.ComponentModel.INotifyPropertyChanged
public sealed class TaskProjectItem : ArcGIS.Desktop.Core.Item, ArcGIS.Desktop.Core.IMetadata, ArcGIS.Desktop.Core.IProjectItem, ArcGIS.Desktop.Core.IProjectMultiItem, System.ComponentModel.INotifyPropertyChanged
IEnumerable<TaskProjectItem> taskItems = Project.Current.GetItems<TaskProjectItem>(); foreach (var item in taskItems) { // do something }
{
// get the first project task item
var taskItem = Project.Current.GetItems<TaskProjectItem>().FirstOrDefault();
// if there isn't a project task item, return
if (taskItem == null)
return;
try
{
// Open it
//At 2.x -
//System.Guid guid = await TaskAssistantModule.OpenTaskItemAsync(taskItem.TaskItemGuid);
var guid = await TaskAssistantFactory.Instance.OpenTaskItemAsync(taskItem.TaskItemGuid);
// TODO - retain the guid returned for use with CloseTaskItemAsync
}
catch (OpenTaskException e)
{
ArcGIS.Desktop.Framework.Dialogs.MessageBox.Show(e.Message);
}
}
{
// find the first project task item which is open
var taskItem = Project.Current.GetItems<TaskProjectItem>().FirstOrDefault(t => t.IsOpen == true);
// if there isn't a project task item, return
if (taskItem == null)
return;
if (taskItem.IsOpen)
{
// close it
// NOTE : The task item will also be removed from the project
//At 2.x -
//TaskAssistantModule.CloseTaskAsync(taskItem.TaskItemGuid);
TaskAssistantFactory.Instance?.CloseTaskItemAsync(taskItem.TaskItemGuid);
}
}
{
// get the first project task item
var taskItem = Project.Current.GetItems<TaskProjectItem>().FirstOrDefault();
// if there isn't a project task item, return
if (taskItem == null)
return;
try
{
// export the task item to the c:\Temp folder
string exportFolder = @"c:\temp";
//At 2.x -
//string fileName = await TaskAssistantModule.ExportTaskAsync(taskItem.TaskItemGuid, exportFolder);
string fileName = await TaskAssistantFactory.Instance.ExportTaskItemAsync(taskItem.TaskItemGuid, exportFolder);
ArcGIS.Desktop.Framework.Dialogs.MessageBox.Show("Task saved to " + fileName);
}
catch (ExportTaskException e)
{
ArcGIS.Desktop.Framework.Dialogs.MessageBox.Show("Error saving task " + e.Message);
}
}
System.Object
ArcGIS.Desktop.Framework.Contracts.PropertyChangedBase
ArcGIS.Desktop.Core.Item
ArcGIS.Desktop.TaskAssistant.TaskProjectItem
Target Platforms: Windows 11 Home, Pro, Enterprise (64 bit)