C#-是否有类似于C#winform/webform中的jquery句柄类HTML的东西?

C#-是否有类似于C#winform/webform中的jquery句柄类HTML的东西?,c#,jquery,asp.net,winforms,webforms,C#,Jquery,Asp.net,Winforms,Webforms,我来自web开发,面临一个使用ASP.NET web表单和C#window表单的项目 所以我可以问一下,代码下面有类似jquery的东西吗 $(".classinput").hide(); 我可以在formcontrol中使用类似htmlclass的东西吗?我想用最短的代码隐藏所有目标文本框 谢谢:)太晚了。但事情是这样的 一开始,实现这一目标并不容易。但我们可以构建功能并使用它。:) 您可以使用C#拥有的IExtenderProvider接口 GroupNameExtender [Provi

我来自web开发,面临一个使用ASP.NET web表单和C#window表单的项目 所以我可以问一下,代码下面有类似jquery的东西吗

$(".classinput").hide();
我可以在formcontrol中使用类似htmlclass的东西吗?我想用最短的代码隐藏所有目标文本框
谢谢:)太晚了。但事情是这样的

一开始,实现这一目标并不容易。但我们可以构建功能并使用它。:)

您可以使用C#拥有的
IExtenderProvider
接口

GroupNameExtender

[ProvideProperty("GroupName", typeof(Control))]
public class GroupNameExtender : Component, IExtenderProvider
{
    private Hashtable groupNameValues = new Hashtable();
    private List<KeyValuePair<string, List<Control>>> groupControls = new List<KeyValuePair<string, List<Control>>>();
    public bool CanExtend(object extendee)
    {
        return (extendee is TextBox && !(extendee is Form));
    }
    public string GetGroupName(Control control)
    {
        if (groupNameValues.ContainsKey(control))
            return (string)groupNameValues[control];
        return null;
    }
    public void SetGroupName(Control control, string value)
    {
        if (string.IsNullOrEmpty(value))
        {
            groupNameValues.Remove(control);
        }
        else
        {
            groupNameValues[control] = value;

            var kv = groupControls.Where(item => item.Key == value).FirstOrDefault();
            var isNewGroup = kv.Equals(default(KeyValuePair<string, List<Control>>));

            if (isNewGroup)
            {
                kv = new KeyValuePair<string, List<Control>>(value, new List<Control>());
            }

            kv.Value.Add(control);

            if (isNewGroup)
            {
                groupControls.Add(kv);
            }
        }
    }

    public void HideGroup(string name)
    {
        var controls = getGroupControls(name);

        if (controls != null)
        {
            controls.Select(c => { c.Visible = false; return c; }).ToList();
        }
    }

    public void ShowGroup(string name)
    {
        var controls = getGroupControls(name);

        if (controls != null)
        {
            controls.Select(c => { c.Visible = true; return c; }).ToList();
        }
    }

    public bool IsGroupVisible(string name)
    {
        var controls = getGroupControls(name);

        return controls.FirstOrDefault().Visible;
    }

    private List<Control> getGroupControls(string name)
    {
        return groupControls.Where(kv => kv.Key == name).FirstOrDefault().Value;
    }
样本输出



太晚了。但事情是这样的

一开始,实现这一目标并不容易。但我们可以构建功能并使用它。:)

您可以使用C#拥有的
IExtenderProvider
接口

GroupNameExtender

[ProvideProperty("GroupName", typeof(Control))]
public class GroupNameExtender : Component, IExtenderProvider
{
    private Hashtable groupNameValues = new Hashtable();
    private List<KeyValuePair<string, List<Control>>> groupControls = new List<KeyValuePair<string, List<Control>>>();
    public bool CanExtend(object extendee)
    {
        return (extendee is TextBox && !(extendee is Form));
    }
    public string GetGroupName(Control control)
    {
        if (groupNameValues.ContainsKey(control))
            return (string)groupNameValues[control];
        return null;
    }
    public void SetGroupName(Control control, string value)
    {
        if (string.IsNullOrEmpty(value))
        {
            groupNameValues.Remove(control);
        }
        else
        {
            groupNameValues[control] = value;

            var kv = groupControls.Where(item => item.Key == value).FirstOrDefault();
            var isNewGroup = kv.Equals(default(KeyValuePair<string, List<Control>>));

            if (isNewGroup)
            {
                kv = new KeyValuePair<string, List<Control>>(value, new List<Control>());
            }

            kv.Value.Add(control);

            if (isNewGroup)
            {
                groupControls.Add(kv);
            }
        }
    }

    public void HideGroup(string name)
    {
        var controls = getGroupControls(name);

        if (controls != null)
        {
            controls.Select(c => { c.Visible = false; return c; }).ToList();
        }
    }

    public void ShowGroup(string name)
    {
        var controls = getGroupControls(name);

        if (controls != null)
        {
            controls.Select(c => { c.Visible = true; return c; }).ToList();
        }
    }

    public bool IsGroupVisible(string name)
    {
        var controls = getGroupControls(name);

        return controls.FirstOrDefault().Visible;
    }

    private List<Control> getGroupControls(string name)
    {
        return groupControls.Where(kv => kv.Key == name).FirstOrDefault().Value;
    }
样本输出



您可以循环抛出这些控件并使用
control.Visible=false
您可以循环抛出这些控件并使用
control.Visible=false