关于DevExPress WinForm的MDI窗体问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于DevExPress WinForm的MDI窗体问题相关的知识,希望对你有一定的参考价值。

就想下边这个,我单击做左边的项,右边出来相应的窗体,进行设置

把右边需要显示的内容做成三个独立的自定义控件,在右边放一个Panel,然后在Panel上放上所有自定义控件对象,单击左侧菜单时,控制右侧自定义控件对象的显隐 参考技术A 如果是按图中的效果其实做成html更简单/效果更好,就是利用webbrowser访问特定html
该html里按如图设计,可以在html中添加iframe
参考技术B 这个使用devexpress中的navigationBar实现啊 参考技术C 因为你生成可执行程序时是用的debug调试运行,这样在没有安装devexpress的机器上就无法运行

Winform MDI窗体容器 权限 简单通讯

 

MDI窗体容器 权限 

复制代码
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;
using WindowsFormsApplication1.App_Code;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1(Users u)
        {
            InitializeComponent();

            if (!u.pre.Contains("1"))
            {
                销售ToolStripMenuItem.Visible = false;
            }

            if (!u.pre.Contains("2"))
            {
                仓库ToolStripMenuItem.Visible = false;
            }

            if (!u.pre.Contains("3"))
            {
                财务ToolStripMenuItem.Visible = false;
            }

            if (!u.pre.Contains("4"))
            {
                综合管理ToolStripMenuItem.Visible = false;
            }


        }

        private void 销售ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Form2 f2 = new Form2();

            f2.WindowState = FormWindowState.Maximized;

            f2.FormBorderStyle = FormBorderStyle.None;

            f2.MdiParent = this;

            f2.Parent = panel1;

            f2.Show();
        }

        private void Form1_SizeChanged(object sender, EventArgs e)
        {
            foreach (var c in panel1.Controls)
            {
                if (c is Form2)
                {
                    (c as Form2).WindowState = FormWindowState.Normal;
                    (c as Form2).WindowState = FormWindowState.Maximized;
                }
            
            }
        }

        private void 仓库ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Form3 f2 = new Form3();

            f2.WindowState = FormWindowState.Maximized;

            f2.FormBorderStyle = FormBorderStyle.None;

            f2.MdiParent = this;

            f2.Parent = panel1;

            f2.Show();
        }

    }
}
复制代码

简单通讯

复制代码
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;
using tongxun.App_Code;
using WindowsFormsApplication1.App_Code;

namespace tongxun
{
    public partial class Form3 : Form
    {
        Users F = null;
        Users T = null;

        public Form3(Users from, Users to)
        {
            InitializeComponent();

            label1.Text = from.UserName;
            label2.Text = to.UserName;

            F = from;
            T = to;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Context c = new Context();
            c.from = label1.Text;
            c.to = label2.Text;
            c.txt = richTextBox2.Text;
            c.state = false;

            new ContextData().Insert(c);

            richTextBox1.Text += F.NickName + "对" + T.NickName + "说:\\r";
            richTextBox1.Text += richTextBox2.Text + "\\r\\n";
            richTextBox2.Text = "";
        }
        List<Context> cclist = new List<Context>();
        private void timer1_Tick(object sender, EventArgs e)
        {
            cclist = new ContextData().Select(T.UserName, F.UserName);

            if (cclist.Count > 0)
            {
                foreach (var c in cclist)
                {
                    richTextBox1.Text += c.from + "对" + c.to + "说:\\r";
                    richTextBox1.Text += c.txt + "\\r\\n";

                    new ContextData().Update(c);
                }
            }
        }





    }
}
复制代码

 

以上是关于关于DevExPress WinForm的MDI窗体问题的主要内容,如果未能解决你的问题,请参考以下文章

c# winform中mdi子窗体激活问题

winform 之MDI容器

WinForm排列MDI子窗体

devexpress与winform区别

Winform下去除MDI窗体边框

Winform MDI窗体容器 权限 简单通讯