.net做的网站,(例如textbox、button按键)不能用鼠标定位,只能用Tab,这是为啥

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.net做的网站,(例如textbox、button按键)不能用鼠标定位,只能用Tab,这是为啥相关的知识,希望对你有一定的参考价值。

是用vs2008,我的意思是说,一般情况下,都用鼠标点button按钮,现在点不了了,只有导航条一切正常,但换了以前做的网站,一切正常啊

参考技术A 是VS08吧,你自己可以设置的,在工具选项栏-》HTML设计器-》CSS定位 勾选将使用工具箱、粘贴。。。。。。,然后在下拉中自行选择 参考技术B 应该是在代码里面设置了用Tab定位 参考技术C 是不是禁用使能了?enabled属性是不是更改了?你看看代码哪里有变化吧。 参考技术D 请把页面属性pageLayout改成:FlowLayout(默认是GridLayout),不明白请给我留言! 第5个回答  2010-08-10 你指的是在vs框架下控件的位置不能用鼠标拖到特定的位置?

在vs框架下可以自己设定但是vs鼠标拖拽的布局没办法详细定位,另外现在做网站tab也很少有人用了,因为在百度、谷歌等搜索引擎搜索数据的时候tab很难去解析,同时用tab有可能撑破导致整个网页布局的崩溃。

若你想要更好的布局建议你使用IDV+CSS方式,基础的用法也很简单,估计看个半天就差不多了,有兴趣可以看看http://www.w3school.com.cn里的教程

如何从 MonthCalendar 显示日期到 TextBox C#

【中文标题】如何从 MonthCalendar 显示日期到 TextBox C#【英文标题】:How to show date from MonthCalendar to TextBox C# 【发布时间】:2016-07-11 07:13:23 【问题描述】:

我有两种形式,一种是月份,另一种是TextBox。 问题是选择它后我没有在 TextBox 上显示日期。 为了确定我编写了工作代码,我只在一个表单上做了同样的事情,而且效果很好。 将 MonthCalendar 设置为 public,与需要显示日期的 TextBox 相同。

这是 Button 和月历的代码:

public void mcKalendar_DateChanged()

    frmNovoVozilo fNv = new frmNovoVozilo();
    fNv.txtDatKupovine.Text =
          mcKalendar.SelectionRange.Start.ToShortDateString();


private void btnDatum_Click(object sender, EventArgs e)

    frmKalendar fKalen = new frmKalendar();
    fKalen.StartPosition = FormStartPosition.CenterScreen;
    fKalen.Show();

也尝试过 DateSelected 并且它给了我相同的结果,什么都没有。 谢谢。

【问题讨论】:

您遇到的问题是您试图引用第二个表单范围之外的表单。除非您在创建第二个时引用原始表单,否则您无法影响更改。请参阅我的回答,了解 2 种方法可以达到您想要的结果 【参考方案1】:

将值传输到前一个表单的一种方法是使用表单关闭事件处理程序和 get/set 方法来提取值。例如:

form1 = new Form1();
form1.FormClosing += new FormClosingEventHandler(GetDateFromForm);

private void GetDateFromForm(object sender, FormClosingEventArgs e)

    textbox1.Text = from1.GetDate;

然后在你的月历表格中,使用

string date;

public string GetDate get return date; set date = value;

Public Form2()

    date = monthCalendar1.SelectionStart.ToShortDateString();

关闭日历后,所选值将被转移。

另一种方法是在第二个表单的构造函数中发送对要应用更改的表单的引用。

在您的主要表单(带有按钮的表单)中,当您创建弹出表单时,使用语法Form2 calendarform = new Form2(this) 并编写一个公共方法来满足您的需要

public void SetText(string text)

    textbox.Text = text;

在您的第二种表格(带有月历的表格)中,您将能够参考前一种方法。例如:

public partial class Form2 : Form

    Form1 _owner;

    public Form2(Form1 form)
    
        InitializeComponent();

        _owner = form;
    

    private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)
    
        _owner.SetText(monthCalendar1.SelectionEnd.ToShortDateString());
    

因为我们在第二个表单中引用了前一个表单,所以您可以调用将在 form1 上运行的所有公共方法。因此,在这种情况下,您可以从 form2 调用 SetText() 方法,这会将文本框更改为我们想要的任何内容 - 在您的情况下,您可以选择月历的值。

使用DateChanged 方法意味着它会在您更改日期时实时调用所述方法。

【讨论】:

由于我是 C# 新手,我确实需要一些语法方面的帮助。在第二种方法中,“Form2 calendarform = new Form2(this)”去哪里了?我得到:上下文中没有“this”关键字。 this 部分基本上表示“这个对象”。所以在这种情况下,this 表示将 form1 发送到第二个表单。第二个表单的构造函数需要将 Form1 作为一个值。即Form2(Form1 originalform) 您需要将Form2 calendarform = new Form2(this) 部分放在调用您的月历表格的按钮中

以上是关于.net做的网站,(例如textbox、button按键)不能用鼠标定位,只能用Tab,这是为啥的主要内容,如果未能解决你的问题,请参考以下文章

asp.net中,当密码框textbox=“password”时,怎么能够在密码输入框中显示提示文字,后台代码怎么写?

如何从 MonthCalendar 显示日期到 TextBox C#

如何在文本更改时启用/禁用绑定到 ICommand 的按钮,而不是失去 TextBox 的焦点

vb.net在textbox1中输入六个数字后,自动将格式转换为时间格式,如输入120314自动变成12:03:14,怎么操作

C#如何清空多个textbox的中的文本!

使 ASP.Net 中的 URL 易于使用