or
Private |
Sub gvMails_RowsChanging(ByVal sender As Object, ByVal e As Telerik.WinControls.UI.GridViewCollectionChangingEventArgs) Handles gvMails.RowsChanging |
If |
e.Action = Telerik.WinControls.Data.NotifyCollectionChangedAction.Remove Then |
If gvMails.SelectedRows.Count = 1 Then |
e.Cancel = |
Not DeleteMessageBox(gvMails.SelectedRows(0).DataBoundItem) |
Else |
e.Cancel = |
Not DeleteMessageBox() |
End If |
End If |
End Sub |
Private |
Function DeleteMessageBox() As Boolean |
If MsgBox("Delete all?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then |
For |
Each itm In gvMails.SelectedRows |
' delete single msg |
Next |
return True |
End If |
Return False |
End |
Function |
Private |
Function DeleteMessageBox(ByVal msg As Message) As Boolean |
If MsgBox("Delete single """ & msg.Subject & """?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then |
' delete single msg |
return True |
End If |
Return False |
End Function |
GridView row = grdClipTask.SelectedRow; Clip grdRow = new Clip(); |
int currentlySelectedRow = row.RowIndex; (snip) List<Clip> gridItems = new List<Clip>(); gridItems.Insert(currentlySelectedRow, grdRow); |
Hi,
I have some code that generates a tree of nodes and then adds them to a supplied RadTreeView, however it seems that the built Tree of RadTreeNode isnt able to be added to more than one RadTreeView.
I wanted to display it in multiple TreeViews without having to create a new Tree of RadTreeNode for each one as it can be taxing on my SQL server and client Processing.
Thanks,
Xavier.
(The TreeView registering / unregistering methods are at the bottom.)
Apologies for the messy code file... its been a rush job and I havent cleaned up yet ^^
using System; |
using System.Collections.Generic; |
using System.Linq; |
using System.Text; |
namespace Platform.Apps.Sigma |
{ |
public class SigmaObjectTree |
{ |
public static Telerik.WinControls.UI.RadTreeNode BlankNode = new Telerik.WinControls.UI.RadTreeNode(); |
private List<Telerik.WinControls.UI.RadTreeView> TargetTreeViews = new List<Telerik.WinControls.UI.RadTreeView>(); |
private String UserNameFQN = String.Empty; |
public Telerik.WinControls.UI.RadTreeNode Platform_Apps_Sigma_Node = new Telerik.WinControls.UI.RadTreeNode() |
{ |
Text = "Infinity Σ (Platform.Apps.Sigma)", |
Image = Platform.Resources.ResizeBitmap(Platform.Resources.puzzle, 16, 16), |
Tag = "" |
}; |
public Telerik.WinControls.UI.RadTreeNode MySigmaNode = new Telerik.WinControls.UI.RadTreeNode() |
{ |
Text = "My Infinity", |
Image = Platform.Resources.ResizeBitmap(Platform.Resources.star_full48, 16, 16), |
Tag = "", |
Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))) |
}; |
public Telerik.WinControls.UI.RadTreeNode EveryonesSigmaNode = new Telerik.WinControls.UI.RadTreeNode() |
{ |
Text = "Everyone's Infinity", |
Image = Platform.Resources.ResizeBitmap(Platform.Resources.home, 16, 16), |
Tag = "", |
Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))) |
}; |
public Telerik.WinControls.UI.RadTreeNode SystemSigmaNode = new Telerik.WinControls.UI.RadTreeNode() |
{ |
Text = "Infinity Σ Settings", |
Image = Platform.Resources.ResizeBitmap(Platform.Resources.process, 16, 16), |
Tag = "", |
Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))) |
}; |
public Telerik.WinControls.UI.RadTreeNode MySigma_UniqueProductsNode = new Telerik.WinControls.UI.RadTreeNode() |
{ |
Text = "My Unique Products", |
Image = Platform.Resources.ResizeBitmap(Platform.Resources.tools, 16, 16), |
Tag = "", |
ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(192))))) |
}; |
public Telerik.WinControls.UI.RadTreeNode MySigma_QuotationsNode = new Telerik.WinControls.UI.RadTreeNode() |
{ |
Text = "My Quotations", |
Image = Platform.Resources.ResizeBitmap(Platform.Resources.dollar_currency_sign, 16, 16), |
Tag = "", |
ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(192))))) |
}; |
public Telerik.WinControls.UI.RadTreeNode MySigma_OrdersNode = new Telerik.WinControls.UI.RadTreeNode() |
{ |
Text = "My Orders", |
Image = Platform.Resources.ResizeBitmap(Platform.Resources.shopping_cart, 16, 16), |
Tag = "", |
ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(192))))) |
}; |
public Telerik.WinControls.UI.RadTreeNode EveryonesSigma_UniqueProductsNode = new Telerik.WinControls.UI.RadTreeNode() |
{ |
Text = "Everyone's Unique Products", |
Image = Platform.Resources.ResizeBitmap(Platform.Resources.tools, 16, 16), |
Tag = "", |
ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(192))))) |
}; |
public Telerik.WinControls.UI.RadTreeNode EveryonesSigma_QuotationsNode = new Telerik.WinControls.UI.RadTreeNode() |
{ |
Text = "Everyone's Quotations", |
Image = Platform.Resources.ResizeBitmap(Platform.Resources.dollar_currency_sign, 16, 16), |
Tag = "", |
ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(192))))) |
}; |
public Telerik.WinControls.UI.RadTreeNode EveryonesSigma_OrdersNode = new Telerik.WinControls.UI.RadTreeNode() |
{ |
Text = "Everyone's Orders", |
Image = Platform.Resources.ResizeBitmap(Platform.Resources.shopping_cart, 16, 16), |
Tag = "", |
ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(192))))) |
}; |
public Telerik.WinControls.UI.RadTreeNode SystemSigma_Support = new Telerik.WinControls.UI.RadTreeNode() |
{ |
Text = "Submit Feedback / Support Request", |
Image = Platform.Resources.ResizeBitmap(Platform.Resources.red_flag, 16, 16), |
Tag = "SIGMA_SETTINGS_SUPPORT", |
ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(192))))) |
}; |
public Telerik.WinControls.UI.RadContextMenu Platform_Apps_Sigma_NodeContextMenu = new Telerik.WinControls.UI.RadContextMenu(); |
public Telerik.WinControls.UI.RadMenuItem rmi_SigmaObjectTree_RefreshObjects = new Telerik.WinControls.UI.RadMenuItem() |
{ |
Text = "Refresh Sigma Objects", |
Tag = "SIGMA_SETTINGS_REFRESH_TREE", |
}; |
#region Unique Product Controls |
public Telerik.WinControls.UI.RadContextMenu UniqueProductContextMenu = new Telerik.WinControls.UI.RadContextMenu(); |
public Telerik.WinControls.UI.RadMenuItem rmi_SigmaObjectTree_MaintainUniqueProduct = new Telerik.WinControls.UI.RadMenuItem() |
{ |
Text = "Maintain Unique Product", |
Tag = "", |
}; |
public Telerik.WinControls.UI.RadMenuItem rmi_SigmaObjectTree_DeleteUniqueProduct = new Telerik.WinControls.UI.RadMenuItem() |
{ |
Text = "Delete Unique Product", |
Tag = "", |
}; |
public Telerik.WinControls.UI.RadMenuItem rmi_SigmaObjectTree_FindLinkedQuotesForUniqueProduct = new Telerik.WinControls.UI.RadMenuItem() |
{ |
Text = "Find linked quotes for this Unique Product", |
Tag = "", |
}; |
#endregion |
#region Quotation Controls |
public Telerik.WinControls.UI.RadContextMenu QuotationContextMenu = new Telerik.WinControls.UI.RadContextMenu(); |
public Telerik.WinControls.UI.RadMenuItem rmi_SigmaObjectTree_MaintainQuotation = new Telerik.WinControls.UI.RadMenuItem() |
{ |
Text = "Maintain Quotation", |
Tag = "", |
}; |
public Telerik.WinControls.UI.RadMenuItem rmi_SigmaObjectTree_DeleteQuotation = new Telerik.WinControls.UI.RadMenuItem() |
{ |
Text = "Delete Quotation", |
Tag = "", |
}; |
#endregion |
#region Initializer Methods |
public SigmaObjectTree(String _UserNameFQN) |
{ |
UserNameFQN = _UserNameFQN; |
InitializeComponent(); |
} |
public void InitializeComponent() |
{ |
#region Event Handlers |
rmi_SigmaObjectTree_RefreshObjects.Click += new EventHandler(rmi_SigmaObjectTree_RefreshObjects_Click); |
rmi_SigmaObjectTree_DeleteUniqueProduct.Click += new EventHandler(rmi_SigmaObjectTree_DeleteUniqueProduct_Click); |
rmi_SigmaObjectTree_FindLinkedQuotesForUniqueProduct.Click += new EventHandler(rmi_SigmaObjectTree_FindLinkedQuotesForUniqueProduct_Click); |
rmi_SigmaObjectTree_MaintainUniqueProduct.Click += new EventHandler(rmi_SigmaObjectTree_MaintainUniqueProduct_Click); |
rmi_SigmaObjectTree_MaintainQuotation.Click += new EventHandler(rmi_SigmaObjectTree_MaintainQuotation_Click); |
rmi_SigmaObjectTree_DeleteQuotation.Click += new EventHandler(rmi_SigmaObjectTree_DeleteQuotation_Click); |
#endregion |
#region Control assignments |
Platform_Apps_Sigma_NodeContextMenu.Items.Add(rmi_SigmaObjectTree_RefreshObjects); |
Platform_Apps_Sigma_Node.Nodes.Add(MySigmaNode); |
Platform_Apps_Sigma_Node.Nodes.Add(EveryonesSigmaNode); |
Platform_Apps_Sigma_Node.Nodes.Add(SystemSigmaNode); |
MySigmaNode.Nodes.Add(MySigma_UniqueProductsNode); |
MySigmaNode.Nodes.Add(MySigma_QuotationsNode); |
MySigmaNode.Nodes.Add(MySigma_OrdersNode); |
EveryonesSigmaNode.Nodes.Add(EveryonesSigma_UniqueProductsNode); |
EveryonesSigmaNode.Nodes.Add(EveryonesSigma_QuotationsNode); |
EveryonesSigmaNode.Nodes.Add(EveryonesSigma_OrdersNode); |
SystemSigmaNode.Nodes.Add(SystemSigma_Support); |
UniqueProductContextMenu.Items.Add(rmi_SigmaObjectTree_DeleteUniqueProduct); |
UniqueProductContextMenu.Items.Add(rmi_SigmaObjectTree_FindLinkedQuotesForUniqueProduct); |
UniqueProductContextMenu.Items.Add(rmi_SigmaObjectTree_MaintainUniqueProduct); |
QuotationContextMenu.Items.Add(rmi_SigmaObjectTree_MaintainQuotation); |
QuotationContextMenu.Items.Add(rmi_SigmaObjectTree_DeleteQuotation); |
#endregion |
RefreshTreeviews(); |
} |
public void RefreshTreeviews() |
{ |
MySigma_UniqueProductsNode.Nodes.Clear(); |
EveryonesSigma_UniqueProductsNode.Nodes.Clear(); |
Platform.Apps.Sigma.UniqueProductsLibrary UPL = new Platform.Apps.Sigma.UniqueProductsLibrary(true); |
var mine = (from q in UPL.UniqueProducts |
where q.CreatedBy == Environment.UserDomainName + @"\" + Environment.UserName |
orderby q.Created descending |
select q).Take(50); |
foreach (Platform.Data.Linq.SigmaUniqueProduct u in mine.ToList()) |
{ |
MySigma_UniqueProductsNode.Nodes.Add(new Telerik.WinControls.UI.RadTreeNode() |
{ |
Text = u.ShortDescription,//.PadLeft(10) + "\r\n" + u.StockCode + "\r\n" + u.SysproStockCode.ShortDescription, |
Name = u.ID.ToString(), |
Tag = u, |
Image = Resources.ResizeBitmap(Resources.tools, 16, 16), |
ContextMenu = UniqueProductContextMenu, |
ToolTipText = "SIGMA_UNIQUEPRODUCT", |
Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0))) |
}); |
} |
var everyones = (from q in UPL.UniqueProducts |
orderby q.Created descending |
select q).Take(50); |
foreach (Platform.Data.Linq.SigmaUniqueProduct u in everyones.ToList()) |
{ |
EveryonesSigma_UniqueProductsNode.Nodes.Add(new Telerik.WinControls.UI.RadTreeNode() |
{ |
Text = "(" + Platform.Security.SecurityTools.WhoIs(u.CreatedBy) + ") " + u.ShortDescription.PadLeft(10), |
Name = u.ID.ToString(), |
Tag = u, |
Image = Resources.ResizeBitmap(Resources.tools, 16, 16), |
ContextMenu = QuotationContextMenu, |
ToolTipText = "SIGMA_UNIQUEPRODUCT", |
Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0))) |
}); |
} |
Platform_Apps_Sigma_Node.ExpandAll(); |
} |
#endregion |
#region Event Handler Methods |
void TargetTreeView_DoubleClick(object sender, EventArgs e) |
{ |
try |
{ |
foreach (Telerik.WinControls.UI.RadTreeView TargetTreeView in TargetTreeViews) |
{ |
switch (TargetTreeView.SelectedNode.Tag.ToString()) |
{ |
case "SIGMA_SETTINGS_REFRESH_TREE": |
{ |
RefreshTreeviews(); |
break; |
} |
case "SIGMA_SETTINGS_SUPPORT": |
{ |
System.Windows.Forms.Form GenericFormDlg = new System.Windows.Forms.Form(); |
GenericFormDlg.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; |
GenericFormDlg.AutoSize = true; |
GenericFormDlg.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; |
GenericFormDlg.Text = "Submit new feedback / support request for Platform Apps"; |
GenericFormDlg.Controls.Add(new Platform.UI.Windows.Common.UCPlatformAppFeedback(UserNameFQN)); |
GenericFormDlg.ShowDialog(); |
break; |
} |
} |
} |
} |
catch |
{ |
} |
} |
void rmi_SigmaObjectTree_RefreshObjects_Click(object sender, EventArgs e) |
{ |
throw new NotImplementedException(); |
} |
static void rmi_SigmaObjectTree_DeleteQuotation_Click(object sender, EventArgs e) |
{ |
throw new NotImplementedException(); |
} |
static void rmi_SigmaObjectTree_MaintainQuotation_Click(object sender, EventArgs e) |
{ |
throw new NotImplementedException(); |
} |
static void rmi_SigmaObjectTree_MaintainUniqueProduct_Click(object sender, EventArgs e) |
{ |
throw new NotImplementedException(); |
} |
static void rmi_SigmaObjectTree_FindLinkedQuotesForUniqueProduct_Click(object sender, EventArgs e) |
{ |
throw new NotImplementedException(); |
} |
static void rmi_SigmaObjectTree_DeleteUniqueProduct_Click(object sender, EventArgs e) |
{ |
throw new NotImplementedException(); |
} |
#endregion |
public bool RegisterRadTreeView(Telerik.WinControls.UI.RadTreeView RadTreeViewToAdd) |
{ |
try |
{ |
RadTreeViewToAdd.Nodes.Add(Platform_Apps_Sigma_Node); |
RadTreeViewToAdd.DoubleClick += new EventHandler(TargetTreeView_DoubleClick); |
TargetTreeViews.Add(RadTreeViewToAdd); |
return true; |
} |
catch |
{ |
return false; |
} |
} |
public bool UnRegisterRadTreeView(Telerik.WinControls.UI.RadTreeView RadTreeViewToRemove) |
{ |
try |
{ |
RadTreeViewToRemove.Nodes.Remove(Platform_Apps_Sigma_Node); |
RadTreeViewToRemove.DoubleClick -= new EventHandler(TargetTreeView_DoubleClick); |
TargetTreeViews.Remove(RadTreeViewToRemove); |
return true; |
} |
catch |
{ |
return false; |
} |
} |
} |
} |
SchedulerBindingDataSource schedulerBindingDataSource1 = new SchedulerBindingDataSource(); |
AppointmentMappingInfo appointmentMappingInfo = new AppointmentMappingInfo(); |
appointmentMappingInfo.Start = "Start"; |
appointmentMappingInfo.End = "End"; |
appointmentMappingInfo.Summary = "Summary"; |
appointmentMappingInfo.Description = "Description"; |
appointmentMappingInfo.Location = "Location"; |
appointmentMappingInfo.UniqueId = "Id"; |
appointmentMappingInfo.BackgroundId = "BackGroundID"; |
appointmentMappingInfo.StatusId = "StatusCarOn"; |
appointmentMappingInfo.ResourceId = "Carid"; |
appointmentMappingInfo.Resources = ""; |
SchedulerMapping idMapping = appointmentMappingInfo.FindByDataSourceProperty("Id"); |
idMapping.ConvertToDataSource = ConvertIdToDataSource; |
idMapping.ConvertToScheduler = ConvertIdToScheduler; |
SchedulerMapping idMapping2 = appointmentMappingInfo.FindByDataSourceProperty("Carid"); |
idMapping2.ConvertToDataSource = ConvertIdToDataSourceForCars; |
idMapping2.ConvertToScheduler = ConvertIdToScheduler; |
schedulerBindingDataSource1.EventProvider.Mapping = appointmentMappingInfo; |
schedulerBindingDataSource1.EventProvider.DataSource = _orderExtendScheduleItems; |
ResourceMappingInfo resourceMappingInfo = new ResourceMappingInfo(); |
resourceMappingInfo.Id = "Carid"; |
resourceMappingInfo.Name = "Carname"; |
SchedulerMapping ridMapping = resourceMappingInfo.FindBySchedulerProperty("Id"); |
ridMapping.ConvertToDataSource = ConvertIdToDataSource2; |
ridMapping.ConvertToScheduler = ConvertIdToScheduler; |
schedulerBindingDataSource1.ResourceProvider.Mapping = resourceMappingInfo; |
schedulerBindingDataSource1.ResourceProvider.DataSource = carList; |
radScheduler1.DataSource = schedulerBindingDataSource1; |