Enable/Disable items in SfTreeNavigator
Thanks for using syncfusion products.
Currently, we are trying to achieve your reported requirement and will update you the further details on April 8th, 2020.
Regards,
Durai
Thanks for your patience.
You can achieve your requirement by using TreeMenuItem.Enabled bool property. Please refer the below code snippet and sample for your reference.
|
public Form1()
{
InitializeComponent();
//Adds items to the TreeNavigator.
treeNavigator.Header.HeaderText = "This PC";
TreeMenuItem treemenuitem1 = new TreeMenuItem();
treeNavigator.Items.Add(treemenuitem1);
treemenuitem1.Text = "Desktop";
TreeMenuItem treemenuitem2 = new TreeMenuItem();
treeNavigator.Items.Add(treemenuitem2);
treemenuitem2.Text = "Document";
TreeMenuItem treemenuitem3 = new TreeMenuItem();
treeNavigator.Items.Add(treemenuitem3);
treemenuitem3.Enabled = false;
treemenuitem3.ItemBackColor = Color.LightGray;
treemenuitem3.Text = "Downloads";
} |
Sample link: https://www.syncfusion.com/downloads/support/directtrac/153051/ze/SampleTreeNavigator1947441718
Regards,
Durai
Sorry for the inconvenienced cause.
Please refer the sample from the following link :
https://www.syncfusion.com/downloads/support/forum/153051/ze/SampleTreeNavigator-2035544166.zip
Query : What namespace is TreeMenuItem under?
You, can achieve by using following namespace "using Syncfusion.Windows.Forms.Tools;".
Regards,
Durai
We deeply regret for the inconvenience caused.
Can achieve your requirement “How to Enable/disable menu items in SfTreeNavigator” by using IsEnable bool property. Please refer the below code snippet and sample for your reference.
Code Snippet
|
<Grid>
<navigation:SfTreeNavigator Header="Enterprise Toolkit" Margin="0,0,540,0">
<navigation:SfTreeNavigatorItem Header="WinRT (XAML)" >
<navigation:SfTreeNavigatorItem Header="Chart"/>
<navigation:SfTreeNavigatorItem Header="Tools"/>
</navigation:SfTreeNavigatorItem>
<navigation:SfTreeNavigatorItem Header="Metro Studio" IsEnabled="False"/>
</navigation:SfTreeNavigator>
</Grid> |
Sample : https://www.syncfusion.com/downloads/support/forum/153051/ze/TreeNavigatorExample1477148263.zip
Regards,
Durai
{
private List<TreeModel> models;
public List<TreeModel> Models
{
get { return models; }
set { models = value; }
}
public TreeViewModel()
{
Models = new List<TreeModel>();
TreeModel Admin = new TreeModel() { Header = "Administration" };
TreeModel Proposals = new TreeModel() { Header = "Proposals" };
TreeModel Estimates = new TreeModel() { Header = "Estimates" };
TreeModel Estimators = new TreeModel() { Header = "Estimators" };
TreeModel LabRate = new TreeModel() { Header = "Labour Rate Collection" };
TreeModel ShiftCal = new TreeModel() { Header = "Shift Calendar Collection" };
TreeModel CrewMix = new TreeModel() { Header = "Crew mix Collection" };
TreeModel EstCode = new TreeModel() { Header = "Estimate Coding" };
TreeModel Lookup = new TreeModel() { Header = "Lookup Lists" };
TreeModel Owner = new TreeModel() { Header = "Customer/Owner List" };
TreeModel Eng = new TreeModel() { Header = "Engineer List" };
TreeModel Comp = new TreeModel() { Header = "Company/Division List" };
TreeModel Propstat = new TreeModel() { Header = "Proposal Status List" };
TreeModel PropGroup = new TreeModel() { Header = "Proposal Group List" };
TreeModel EstType = new TreeModel() { Header = "Estimate Type List" };
Lookup.Models.Add(Owner);
Lookup.Models.Add(Eng);
Lookup.Models.Add(Comp);
Lookup.Models.Add(Propstat);
Lookup.Models.Add(PropGroup);
Lookup.Models.Add(EstType);
Admin.Models.Add(Estimators);
Admin.Models.Add(LabRate);
Admin.Models.Add(ShiftCal);
Admin.Models.Add(CrewMix);
Admin.Models.Add(EstCode);
Admin.Models.Add(Lookup);
Models.Add(Proposals);
Models.Add(Estimates);
Models.Add(Admin);
}
private object selecteditem;
public object SelectedItem
{
get { return selecteditem; }
set { selecteditem = value; }
}
Thanks for your update.
You can achieve your requirement “How to Enable/disable menu items in SfTreeNavigator using MVVM” to customize the SfTreeNavigator.ItemContainerStyle by binding the IsEnable property for SfTreeNavigatorItem.
Please refer the below code snippet and sample for your reference.
Code Snippet
|
<Grid>
<navigation:SfTreeNavigator ItemsSource="{Binding Models}"
Header="Enterprise Toolkit"
Width="300" Height="400"
HorizontalAlignment="Center"
VerticalAlignment="Center" >
<navigation:SfTreeNavigator.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Models}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Header}"
VerticalAlignment="Center" Margin="18 0 0 0"/>
</StackPanel>
</HierarchicalDataTemplate>
</navigation:SfTreeNavigator.ItemTemplate>
<navigation:SfTreeNavigator.ItemContainerStyle>
<Style TargetType="{x:Type navigation:SfTreeNavigatorItem}">
<Setter Property="IsEnabled" Value="{Binding IsEnable}"/>
<Style.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Background" Value="LightGray"/>
</Trigger>
</Style.Triggers>
</Style>
</navigation:SfTreeNavigator.ItemContainerStyle>
</navigation:SfTreeNavigator>
</Grid> |
Sample: https://www.syncfusion.com/downloads/support/forum/153051/ze/TreeNavigator127383077.zip
Regards,
Durai
Please find the feedback link to track the status of it.
Link: https://www.syncfusion.com/feedback/23225/background-does-not-applied-properly-on-setting-the-style-for-sftreenavigatoritem
The patch will be updated on 17th March, 2021
Regards,
Vijayalakshmi VR
Thank you for your patience.
We are still working on fixing the reported issue. As it requires changes in its implementation, we need more time to fix and ensure it in all the cases. We will fix and provide the patch by March 22, 2021.
We appreciate your patience until then.
Regards
Vijayalakshmi VR
Hi
Mariusz,
Thank
you for your patience.
We
have fixed the reported behavior “On applying the style for SfTreeNavigatorItem, it overrides
the applied theme” with
SfTreeNavigator and patch for the same can be downloaded from following
links.
Recommended
approach - exe will perform automatic configuration.
Please
find the patch setup from below location:
Assemblies
Link: https://syncfusion.com/Installs/support/patch/18.4.0.30/613278/F153051/SyncfusionPatch_18.4.0.30_613278_3232021011155878_F153051.zip
Assembly
Version: 18.4.0.30
Installation
Directions:
This
patch should replace the files "Syncfusion.SfTreeNavigator.WPF” under the
following folder.
$system
drive:\ Files\Syncfusion\Essential Studio\$Version #
\precompiledassemblies\$Version#\[TargetFramework]
Eg
: $system drive:\Program Files\Syncfusion\Essential
Studio\18.4.0.30\precompiledassemblies\18.4.0.30\4.6
To
automatically run the Assembly Manager, please check the Run assembly manager
checkbox option while installing the patch. If this option is unchecked, the
patch will replace the assemblies in precompiled assemblies’ folder only. Then,
you must manually copy and paste them to the preferred location or you must run
the Syncfusion Assembly Manager application (available from the Syncfusion
Dashboard, installed as a shortcut in the Application menu) to re-install
assemblies.
https://www.syncfusion.com/support/directtrac/patches
Please
try this patch and let us know if it is resolved at your end.
Feedback
Link: https://www.syncfusion.com/feedback/23225/background-does-not-applied-properly-on-setting-the-style-for-sftreenavigatoritem
Regards,
Vijayalakshmi
VR
- 14 Replies
- 3 Participants
-
MJ Mariusz Juszkiewicz
- Apr 6, 2020 12:42 AM UTC
- Mar 23, 2021 06:47 AM UTC