... 8 лет спустя ...
Альтернативой коду Ханса Пассанта, который не требует от вас создания нового класса просто для того, чтобы ваш PictureBox
был в порядке табуляции, является установка TabStop
в true
и прямой вызов SetStyle()
на PictureBox
оптимально после вызова InitializeComponent()
.
TabStop
является общедоступным, поэтому его легко настроить, но SetStyle()
защищен, поэтому на помощь приходит отражение!
myPictureBox.TabStop = true;
typeof(PictureBox)
.GetMethod("SetStyle", BindingFlags.Instance | BindingFlags.NonPublic)
.Invoke(myPictureBox, new object[] { ControlStyles.Selectable, true });
Это, конечно, не делает ничего похожего на получение фокуса при нажатии PictureBox
, поэтому вы должны делать это в различных событиях по своему усмотрению.