chr
2026-04-08 53e656200368a983e563550e2cc1acbc6d86b729
Editor/Provider/GridControlProvider.cs
@@ -190,18 +190,31 @@
                return tree;
            }
            TextBox tb = new TextBox
            if (property.GetCustomAttribute<IgnoreVariable>() is IgnoreVariable iv)
            {
                IsReadOnly = !(property.CanWrite && property.SetMethod?.IsPublic == true)
            };
            BindingOperations.SetBinding(tb, TextBox.TextProperty,
                TextBox tb = new TextBox
                {
                    IsReadOnly = !(property.CanWrite && property.SetMethod?.IsPublic == true)
                };
                BindingOperations.SetBinding(tb, TextBox.TextProperty,
                    new Binding(property.Name)
                    {
                        Source = source,
                        Mode = tb.IsReadOnly ? BindingMode.OneWay : BindingMode.TwoWay,
                        UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged
                    });
                return tb;
            }
            VariableTextBox vtb = new VariableTextBox() { Step = (ITestStep)source };
            BindingOperations.SetBinding(vtb, VariableTextBox.ValueProperty,
                new Binding(property.Name)
                {
                    Source = source,
                    Mode = tb.IsReadOnly ? BindingMode.OneWay : BindingMode.TwoWay,
                    UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged
                });
            return tb;
            return vtb;
        }
        public static bool FilterMember(IMemberData member)