private void OnBreadcrumbConvertItem(object sender, BreadcrumbConvertItemEventArgs e) { string path = e.Path; var item = e.Item as BreadcrumbItem; if (item == null) { return; } ItemCollection items = item.Items; items.Clear(); try { FileSystemDescription filedesc = Client.Stat(path); if (filedesc.IsDirectory) { // _logger.Debug(string.Format("[LIST]{0}", path)); FileSystemDescription[] fileDescriptions = Client.List(path); foreach (FileSystemDescription file in fileDescriptions) { items.Add(new BreadcrumbItem { Header = file.Name, PathEntry = file.Name, }); } } } catch (FaultException) { } }
/// <summary> /// Converts the BreadCrumbItems /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The <see cref="System.Windows.RoutedEventArgs"/> instance containing the event data.</param> private void OnBreadcrumbConvertItem(object sender, BreadcrumbConvertItemEventArgs e) { if (_isloaded) { if (breadcrumb.SelectedItem is BreadCrumbViewModel) { SelectedItems.Insert(0, breadcrumb.SelectedItem); return; } ConvertItemHelper.ItemTitle = ((WorkspaceItem)(breadcrumb.SelectedItem)).ItemTitle; e.Path = ConvertItemHelper.ItemTitle; return; } if (Vm.Treeviewitem != null) { if ((Vm.Treeviewitem.Header is WorkspaceItem) && (Vm.Treeviewitem.Header as WorkspaceItem).ItemImage.Length == 0) { (Vm.Treeviewitem.Header as WorkspaceItem).ItemImage = GetLocalItemImageForBreadCrumb(); } ConvertItemHelper.Treeviewitem = Vm.Treeviewitem; // ConvertItemHelper.HandleConvertItem(sender, e); } UpdateSelectedItems(); ConvertItemHelper.GetTrail(breadcrumb.RootItem, breadcrumb.SelectedItem); ConvertItemHelper.HandleConvertItem(sender, e); #region "need to check" //Loads dynamically the child item for the selected breadcrumb menu item //if (e.Item.GetType().Name == Constants.WorkspaceItem) //{ // if (((WorkspaceItem)e.Item).Children != null) // { // foreach (var item in ((WorkspaceItem)e.Item).Children) // { // if (item.Children != null) // foreach (var childitem in item.Children) // { // if (childitem.Children == null || childitem.Children.Length == 0) // { // ChildItem.Add(childitem); // //Vm.EventBroker.RaiseGetChild(new LoadWorkspaceItemEventArgs // //{ // // WorkspaceId = childitem.Id, // // ItemId = childitem.ItemId // //}); // } // } // } // ConvertItemHelper.ChildItem = ChildItem; // } // } #endregion }
///////////////////////////////////////////////////////////////////////////////////////////////////// // NON-PUBLIC PROCEDURES ///////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> /// Handles the ConvertItem event of the breadcrumb control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="ActiproSoftware.Windows.Controls.Navigation.BreadcrumbConvertItemEventArgs"/> instance containing the event data.</param> private void OnBreadcrumbConvertItem(object sender, BreadcrumbConvertItemEventArgs e) { // If here and the trail is null, then the default conversion handling has failed. if (BreadcrumbConvertItemTargetType.Trail == e.TargetType && null == e.Trail) { MessageBox.Show("The specified path could not be found.", "Breadcrumb Sample", MessageBoxButton.OK, MessageBoxImage.Error); } }
/// <summary> /// Handles the ConvertItem event of a Breadcrumb control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="BreadcrumbConvertItemEventArgs"/> instance containing the event data.</param> /// <exception cref="NotImplementedException"></exception> public static void HandleConvertItem(object sender, BreadcrumbConvertItemEventArgs e) { if (BreadcrumbConvertItemTargetType.Path == e.TargetType) { // Convert either the item or the trail to a path object item = e.Item; if (null == item && null != e.Trail && 0 != e.Trail.Count) { item = e.Trail[e.Trail.Count - 1]; } // e.Path = GetPath(item); //if (TreeViewItemPath == null) // TreeViewItemPath = "Root"; e.Path = TreeViewItemPath ?? GetPath(item); } else if (BreadcrumbConvertItemTargetType.Trail == e.TargetType) { IList trail = null; if (null != e.Path) { trail = GetTrail(e.RootItem, e.Path); } else if (null != e.Item) { trail = GetTrail(e.RootItem, e.Item); } if (null == trail) { ReportError("The specified path could not be found."); return; } e.Trail = null; e.Trail = trail; } else { ReportError("Unsupported Breadcrumb target type."); return; } }
/// <summary> /// Handles the ConvertItem event of a Breadcrumb control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="BreadcrumbConvertItemEventArgs"/> instance containing the event data.</param> public static void HandleConvertItem(object sender, BreadcrumbConvertItemEventArgs e) { if (BreadcrumbConvertItemTargetType.Path == e.TargetType) { Breadcrumb breadCrumb = sender as Breadcrumb; if (null != breadCrumb) { // Convert either the item or the trail to a path object item = e.Item; if (null == item && null != e.Trail && 0 != e.Trail.Count) { item = e.Trail[e.Trail.Count - 1]; } e.Path = GetPath(breadCrumb.RootItem, item); } } else if (BreadcrumbConvertItemTargetType.Trail == e.TargetType) { IList trail = null; if (null != e.Path) { trail = GetTrail(e.RootItem, e.Path); } else if (null != e.Item) { trail = GetTrail(e.RootItem, e.Item); } if (null == trail) { return; } e.Trail = trail; } else { throw new NotImplementedException("Unsupported Breadcrumb target type"); } }
///////////////////////////////////////////////////////////////////////////////////////////////////// // NON- PUBLIC PROCEDURES ///////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> /// Handles the ConvertItem event of the breadcrumb control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="BreadcrumbConvertItemEventArgs"/> instance containing the event data.</param> private void OnBreadcrumbConvertItem(object sender, BreadcrumbConvertItemEventArgs e) { ConvertItemHelper.HandleConvertItem(sender, e); }
private void OnBreadcrumbConvertItem(object sender, BreadcrumbConvertItemEventArgs e) { string path = e.Path; var item = e.Item as BreadcrumbItem; if (item == null) return; ItemCollection items = item.Items; items.Clear(); try { FileSystemDescription filedesc = Client.Stat(path); if (filedesc.IsDirectory) { // _logger.Debug(string.Format("[LIST]{0}", path)); FileSystemDescription[] fileDescriptions = Client.List(path); foreach (FileSystemDescription file in fileDescriptions) { items.Add(new BreadcrumbItem { Header = file.Name, PathEntry = file.Name, }); } } } catch (FaultException) { } }