Skip to content

Commit 000b9c1

Browse files
authored
Merge pull request #2 from SweathaBharathi/patch-1
Update README.md
2 parents db8a3e0 + 1979168 commit 000b9c1

File tree

1 file changed

+117
-119
lines changed

1 file changed

+117
-119
lines changed

README.md

Lines changed: 117 additions & 119 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# How to edit an item in WinUI Treeview?
1+
# How to edit an item in WinUI Treeview (SfTreeView)?
22

33
## About the sample
44

@@ -12,41 +12,40 @@ It is necessary to define [EditTemplate](https://help.syncfusion.com/cr/winui/Sy
1212

1313
``` XML
1414

15-
<treeView:SfTreeView x:Name="treeView"
16-
Width="400"
17-
Height="500"
18-
AllowEditing="True"
19-
AutoExpandMode="AllNodes"
20-
ChildPropertyName="Childs"
21-
BorderBrush="LightGray"
22-
IsAnimationEnabled="True"
23-
BorderThickness="1"
24-
FullRowSelect="True"
25-
ItemsSource="{Binding Nodes1}">
26-
<treeView:SfTreeView.ItemTemplate>
27-
<DataTemplate>
28-
<StackPanel Orientation="Horizontal">
29-
<ContentPresenter Width="20"
30-
Height="20"
31-
HorizontalAlignment="Stretch"
32-
VerticalAlignment="Center"
33-
ContentTemplate="{Binding ImageTemplate}" />
34-
<TextBlock
35-
Margin="5"
36-
VerticalAlignment="Center"
37-
Text="{Binding Header}" />
38-
</StackPanel>
39-
</DataTemplate>
40-
</treeView:SfTreeView.ItemTemplate>
41-
<treeView:SfTreeView.EditTemplate>
42-
<DataTemplate>
43-
<TextBox VerticalAlignment="Center"
44-
Height="{Binding Path=ItemHeight,ElementName=treeView}"
45-
BorderThickness="1"
46-
Text="{Binding Header,Mode=TwoWay}"/>
47-
</DataTemplate>
48-
</treeView:SfTreeView.EditTemplate>
49-
</treeView:SfTreeView>
15+
<treeView:SfTreeView x:Name="treeView"
16+
Width="400"
17+
Height="500"
18+
AllowEditing="True"
19+
AutoExpandMode="AllNodes"
20+
ChildPropertyName="Childs"
21+
BorderBrush="LightGray"
22+
IsAnimationEnabled="True"
23+
BorderThickness="1"
24+
FullRowSelect="True"
25+
ItemsSource="{Binding Nodes1}">
26+
<treeView:SfTreeView.ItemTemplate>
27+
<DataTemplate>
28+
<StackPanel Orientation="Horizontal">
29+
<ContentPresenter Width="20"
30+
Height="20"
31+
HorizontalAlignment="Stretch"
32+
VerticalAlignment="Center"
33+
ContentTemplate="{Binding ImageTemplate}" />
34+
<TextBlock Margin="5"
35+
VerticalAlignment="Center"
36+
Text="{Binding Header}" />
37+
</StackPanel>
38+
</DataTemplate>
39+
</treeView:SfTreeView.ItemTemplate>
40+
<treeView:SfTreeView.EditTemplate>
41+
<DataTemplate>
42+
<TextBox VerticalAlignment="Center"
43+
Height="{Binding Path=ItemHeight,ElementName=treeView}"
44+
BorderThickness="1"
45+
Text="{Binding Header,Mode=TwoWay}"/>
46+
</DataTemplate>
47+
</treeView:SfTreeView.EditTemplate>
48+
</treeView:SfTreeView>
5049

5150
```
5251

@@ -111,119 +110,118 @@ The user can take a backup of existing data of a node in the [BeginEdit](https:/
111110
The below code snippet explains the simple implementation of IEditableObject interface to rollback the changes.
112111

113112
``` C#
114-
115113
public class EditingModel : INotifyPropertyChanged, IEditableObject
116114
{
117-
#region Fields
115+
#region Fields
118116

119-
private string name;
120-
internal EditingModel backUpData;
121-
private EditingModel currentData;
117+
private string name;
118+
internal EditingModel backUpData;
119+
private EditingModel currentData;
122120

123-
private string header = string.Empty;
124-
private bool isexpanded = true;
125-
private DataTemplate imageTemplate;
126-
private ObservableCollection<EditingModel> childs = null;
121+
private string header = string.Empty;
122+
private bool isexpanded = true;
123+
private DataTemplate imageTemplate;
124+
private ObservableCollection<EditingModel> childs = null;
127125

128-
#endregion
126+
#endregion
129127

130-
#region Constructor
128+
#region Constructor
131129

132-
public EditingModel()
133-
{
134-
135-
}
130+
public EditingModel()
131+
{
136132

137-
public EditingModel(string name):base()
138-
{
139-
Childs = new ObservableCollection<EditingModel>();
140-
this.currentData = new EditingModel();
141-
this.currentData.name = name;
142-
}
133+
}
143134

144-
#endregion
135+
public EditingModel(string name) : base()
136+
{
137+
Childs = new ObservableCollection<EditingModel>();
138+
this.currentData = new EditingModel();
139+
this.currentData.name = name;
140+
}
145141

146-
#region Properties
147-
public string Header
142+
#endregion
143+
144+
#region Properties
145+
public string Header
146+
{
147+
get
148+
{
149+
return currentData.name;
150+
}
151+
set
148152
{
149-
get
150-
{
151-
return currentData.name;
152-
}
153-
set
154-
{
155-
currentData.name = value;
156-
this.RaisePropertyChanged("Header");
157-
}
153+
currentData.name = value;
154+
this.RaisePropertyChanged("Header");
158155
}
156+
}
159157

160-
public bool IsExpanded
158+
public bool IsExpanded
159+
{
160+
get
161161
{
162-
get
163-
{
164-
return isexpanded;
165-
}
166-
set
167-
{
168-
isexpanded = value;
169-
this.RaisePropertyChanged("IsExpanded");
170-
}
162+
return isexpanded;
171163
}
172-
173-
public DataTemplate ImageTemplate
164+
set
174165
{
175-
get { return imageTemplate; }
176-
set { imageTemplate = value; }
166+
isexpanded = value;
167+
this.RaisePropertyChanged("IsExpanded");
177168
}
169+
}
178170

179-
public ObservableCollection<EditingModel> Childs
171+
public DataTemplate ImageTemplate
172+
{
173+
get { return imageTemplate; }
174+
set { imageTemplate = value; }
175+
}
176+
177+
public ObservableCollection<EditingModel> Childs
178+
{
179+
get
180+
{
181+
return childs;
182+
}
183+
set
180184
{
181-
get
182-
{
183-
return childs;
184-
}
185-
set
186-
{
187-
childs = value;
188-
this.RaisePropertyChanged("Childs");
189-
}
185+
childs = value;
186+
this.RaisePropertyChanged("Childs");
190187
}
188+
}
191189

192-
#endregion
190+
#endregion
193191

194-
#region INotifyPropertyChanged
192+
#region INotifyPropertyChanged
195193

196-
public event PropertyChangedEventHandler PropertyChanged;
194+
public event PropertyChangedEventHandler PropertyChanged;
197195

198-
public void RaisePropertyChanged(string _PropertyName)
196+
public void RaisePropertyChanged(string _PropertyName)
197+
{
198+
if (PropertyChanged != null)
199199
{
200-
if (PropertyChanged != null)
201-
{
202-
PropertyChanged(this, new PropertyChangedEventArgs(_PropertyName));
203-
}
200+
PropertyChanged(this, new PropertyChangedEventArgs(_PropertyName));
204201
}
202+
}
205203

206-
#endregion
204+
#endregion
207205

208-
#region IEditableObject
206+
#region IEditableObject
209207

210-
public void BeginEdit()
211-
{
212-
backUpData = new EditingModel();
213-
backUpData.name = this.currentData.name;
214-
}
215-
216-
public void EndEdit()
217-
{
218-
219-
}
208+
public void BeginEdit()
209+
{
210+
backUpData = new EditingModel();
211+
backUpData.name = this.currentData.name;
212+
}
220213

221-
public void CancelEdit()
222-
{
223-
this.currentData = backUpData;
224-
}
225-
226-
#endregion
214+
public void EndEdit()
215+
{
216+
217+
}
218+
219+
public void CancelEdit()
220+
{
221+
this.currentData = backUpData;
222+
}
223+
224+
#endregion
227225
}
228226

229227
```

0 commit comments

Comments
 (0)