我正在使用C#开发.NET 2.0。从文本框中按选项卡后如何将控件对焦到图片框?请给我一个解决方案。
答案 0 :(得分:5)
Picturebox控件不是可选控件,因此它不会获得焦点。即使您尝试在表单加载上设置tabindex和tabstop属性,它也无法获得焦点。
为什么要将焦点设置到picturebox?您是否将此控件的click事件用作按钮单击事件?
您能否就此提供更多细节,以便我们为此提供合适的解决方案?
答案 1 :(得分:3)
创建一个button1,然后将其TabIndex设置为小于pictureBox1的;将button1放在pictureBox1的顶部。然后在运行时将其隐藏在pictureBox1后面。要给出pictureBox具有焦点的视觉提示,请将BorderStyle设置为Fixed3d,在失去焦点时将其设置为none。
概念证明:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace TestPicture
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
button1.SendToBack();
pictureBox1.Click += button1_Click;
}
private void button1_Enter(object sender, EventArgs e)
{
pictureBox1.BorderStyle = BorderStyle.Fixed3D;
}
private void button1_Leave(object sender, EventArgs e)
{
pictureBox1.BorderStyle = BorderStyle.None;
}
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show("Test");
}
}
}
答案 2 :(得分:1)
您需要将PictureBox
括在可以接收点击事件的控件中。