2 crystal  qing crystal__qing 于 2014.09.18 11:46 提问

C# 新添加的控件显示在最前

最近做项目,需要实现一个功能:
每次按下键盘的某个按键,截一张图,然后在窗体旁边的控件(容器A)上显示这张图片,目前我使用FlowLayoutPanel作为容器A,每生成一张图片就新添加一个PictureBox来显示该图片,并将PictureBox添加到容器A中,每次新添加的PictureBox是显示在容器A最后面的,但现在被要求每次最新添加的图片显示在最前面。完全计算坐标是可以的,但太麻烦,每添加一张图片都要遍历所有PictureBox并改变坐标,当容器A的Size变化的时候还得重新计算一遍。请问有什么方法可以较为简单地实现?

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
winform窗体总在所有窗体最上层
TopMost=true即可实现窗体在最前端显示
C# 控件置于最顶层、最底层
[csharp] view plaincopyprint? btn.BringToFront();//将控件放置所有控件最前端   btn.SendToBack();//将控件放置所有控件最底端
wpf 只让窗口保留一个,并在最前显示
就是遍历所有的,有的话就不生成了,没有的话就生成一个,还有最前是一个参数,最后就是窗口事件了。 //如果容器里没有预览控件,就加入控件 ChangeDistingWordOfSelected mw = null; foreach (Window win in App.Current.Windows) {
让通用对话框显示在窗口最前面(C#)
注:API函数GetForegroundWindow用来获得前台窗口的句柄,这里的“前台窗口”是指前台应用程序的活动窗口 类ForegroundWindow继承了框架提供的IWin32Window接口,并定义了一个静态的IWin32Window属性Instance,用来获得前台窗口的句柄。 public class ForegroundWindow : IWin32Window {  privat
WPF 窗体显示最前端
如何做一个自定义窗体,像迅雷的悬浮窗那样,不能被最小化,并且始终显示在屏幕的最前端(就像某些播放器前端显示一样) 问题如上,解决即结贴.谢谢 ------解决方案-------------------------------------------------------- FormBorderStyle:None TopMost:true Opacity:50% ShowInT
MessageBox 显示总显示在最前面
static public DialogResult Show(string message, string title, MessageBoxButtons buttons) { // Create a host form that is a TopMost window which will be the
c#只启动一个软件并将其置于最前
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Diagnostics; using Sys
C#动态添加控件到窗体不显示
在FormLoad里面添加控件时,用this.Controls.Add()方法向窗体里面动态添加控件,调试,一直不显示,后来发现原来窗体上有一个groupbox覆盖了整个窗体,其实控件已经添加上去了,只是被遮盖了。 后面改为this.groupBox1.Controls.Add(),把控件添加到groupbox里面就不会被遮盖了 1 private void UniqueForm_L
窗体form在最前面(顶层),topmost
bool b = false;private void button2_Click(object sender, EventArgs e){    if (b)    {        this.TopMost = true;        b = false;    }
c#里面如何激活一个外部程序进程并显示在最前
using System.Diagnostics; using System.Runtime.InteropServices; [DllImport("user32.dll")] public static extern void SwitchToThisWindow(IntPtr hWnd, bool fAltTab); private void button3_Click(object s