实例介绍
【实例简介】DotNetBar的Popup实例
【实例截图】DotNetBar的Popup实例
【实例截图】DotNetBar的Popup实例
【核心代码】DotNetBar的Popup实例
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using DevComponents.DotNetBar;
namespace Popup
{
/// <summary>
/// Summary description for Form1.
/// </summary>
public class Form1 : System.Windows.Forms.Form
{
private System.Windows.Forms.ImageList imageList1;
private System.Windows.Forms.RichTextBox richTextBox1;
private System.Windows.Forms.Button cmdPopupMenu;
private System.Windows.Forms.Button cmdPopupBar;
private System.Windows.Forms.Button cmdClose;
private DevComponents.DotNetBar.Controls.ComboBoxEx cboStyle;
private DevComponents.Editors.ComboItem comboItem1;
private DevComponents.Editors.ComboItem comboItem2;
private System.ComponentModel.IContainer components;
private DevComponents.DotNetBar.ContextMenuBar contextMenuBar1;
private DevComponents.DotNetBar.ButtonItem bRichPopup;
private DevComponents.DotNetBar.ButtonItem bCut;
private DevComponents.DotNetBar.ButtonItem bCopy;
private DevComponents.DotNetBar.ButtonItem bPaste;
private DevComponents.DotNetBar.ButtonItem bDelete;
private DevComponents.DotNetBar.ButtonItem bSelectAll;
private DevComponents.DotNetBar.DotNetBarManager dotNetBarManager1;
private DevComponents.DotNetBar.DockSite dockSite1;
private DevComponents.DotNetBar.DockSite dockSite2;
private DevComponents.DotNetBar.DockSite dockSite3;
private DevComponents.DotNetBar.DockSite dockSite4;
private DevComponents.DotNetBar.DockSite dockSite5;
private DevComponents.DotNetBar.DockSite dockSite6;
private DevComponents.DotNetBar.DockSite dockSite7;
private DevComponents.DotNetBar.DockSite dockSite8;
private DevComponents.DotNetBar.ButtonItem m_PopupFromCode=null;
public Form1()
{
//
// Required for Windows Form Designer support
//
InitializeComponent();
//
// TODO: Add any constructor code after InitializeComponent call
//
}
/// <summary>
/// Clean up any resources being used.
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if (components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(Form1));
this.cmdPopupBar = new System.Windows.Forms.Button();
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
this.imageList1 = new System.Windows.Forms.ImageList(this.components);
this.cmdPopupMenu = new System.Windows.Forms.Button();
this.comboItem2 = new DevComponents.Editors.ComboItem();
this.comboItem1 = new DevComponents.Editors.ComboItem();
this.cboStyle = new DevComponents.DotNetBar.Controls.ComboBoxEx();
this.cmdClose = new System.Windows.Forms.Button();
this.contextMenuBar1 = new DevComponents.DotNetBar.ContextMenuBar();
this.bRichPopup = new DevComponents.DotNetBar.ButtonItem();
this.bCut = new DevComponents.DotNetBar.ButtonItem();
this.bCopy = new DevComponents.DotNetBar.ButtonItem();
this.bPaste = new DevComponents.DotNetBar.ButtonItem();
this.bDelete = new DevComponents.DotNetBar.ButtonItem();
this.bSelectAll = new DevComponents.DotNetBar.ButtonItem();
this.dotNetBarManager1 = new DevComponents.DotNetBar.DotNetBarManager(this.components);
this.dockSite1 = new DevComponents.DotNetBar.DockSite();
this.dockSite2 = new DevComponents.DotNetBar.DockSite();
this.dockSite3 = new DevComponents.DotNetBar.DockSite();
this.dockSite4 = new DevComponents.DotNetBar.DockSite();
this.dockSite5 = new DevComponents.DotNetBar.DockSite();
this.dockSite6 = new DevComponents.DotNetBar.DockSite();
this.dockSite7 = new DevComponents.DotNetBar.DockSite();
this.dockSite8 = new DevComponents.DotNetBar.DockSite();
((System.ComponentModel.ISupportInitialize)(this.contextMenuBar1)).BeginInit();
this.SuspendLayout();
//
// cmdPopupBar
//
this.cmdPopupBar.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right);
this.cmdPopupBar.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.cmdPopupBar.Location = new System.Drawing.Point(296, 66);
this.cmdPopupBar.Name = "cmdPopupBar";
this.cmdPopupBar.Size = new System.Drawing.Size(88, 24);
this.cmdPopupBar.TabIndex = 5;
this.cmdPopupBar.Text = "Popup Bar";
this.cmdPopupBar.Click = new System.EventHandler(this.PopupBar);
//
// richTextBox1
//
this.richTextBox1.Anchor = (((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.contextMenuBar1.SetContextMenuEx(this.richTextBox1, this.bRichPopup);
this.richTextBox1.Location = new System.Drawing.Point(8, 8);
this.richTextBox1.Name = "richTextBox1";
this.richTextBox1.Size = new System.Drawing.Size(280, 208);
this.richTextBox1.TabIndex = 4;
this.richTextBox1.Text = "Right-click in this edit box to show context menu";
//
// imageList1
//
this.imageList1.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit;
this.imageList1.ImageSize = new System.Drawing.Size(16, 15);
this.imageList1.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList1.ImageStream")));
this.imageList1.TransparentColor = System.Drawing.Color.Silver;
//
// cmdPopupMenu
//
this.cmdPopupMenu.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right);
this.cmdPopupMenu.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.cmdPopupMenu.Location = new System.Drawing.Point(296, 34);
this.cmdPopupMenu.Name = "cmdPopupMenu";
this.cmdPopupMenu.Size = new System.Drawing.Size(88, 24);
this.cmdPopupMenu.TabIndex = 5;
this.cmdPopupMenu.Text = "Popup Menu";
this.cmdPopupMenu.Click = new System.EventHandler(this.PopupMenu);
//
// comboItem2
//
this.comboItem2.Text = "VS.NET 2005";
this.comboItem2.TextLineAlignment = System.Drawing.StringAlignment.Center;
//
// comboItem1
//
this.comboItem1.Text = "Office2003";
this.comboItem1.TextLineAlignment = System.Drawing.StringAlignment.Center;
//
// cboStyle
//
this.cboStyle.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right);
this.cboStyle.DisableInternalDrawing = false;
this.cboStyle.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cboStyle.DropDownWidth = 84;
this.cboStyle.Images = null;
this.cboStyle.Items.AddRange(new object[] {
this.comboItem1,
this.comboItem2});
this.cboStyle.Location = new System.Drawing.Point(299, 8);
this.cboStyle.Name = "cboStyle";
this.cboStyle.Size = new System.Drawing.Size(84, 21);
this.cboStyle.Style = DevComponents.DotNetBar.eDotNetBarStyle.OfficeXP;
this.cboStyle.TabIndex = 6;
//
// cmdClose
//
this.cmdClose.Anchor = (System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right);
this.cmdClose.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.cmdClose.Location = new System.Drawing.Point(296, 192);
this.cmdClose.Name = "cmdClose";
this.cmdClose.Size = new System.Drawing.Size(88, 24);
this.cmdClose.TabIndex = 5;
this.cmdClose.Text = "&Close";
this.cmdClose.Click = new System.EventHandler(this.cmdClose_Click);
//
// contextMenuBar1
//
this.contextMenuBar1.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] {
this.bRichPopup});
this.contextMenuBar1.Location = new System.Drawing.Point(288, 104);
this.contextMenuBar1.Name = "contextMenuBar1";
this.contextMenuBar1.Size = new System.Drawing.Size(104, 25);
this.contextMenuBar1.Style = DevComponents.DotNetBar.eDotNetBarStyle.Office2003;
this.contextMenuBar1.TabIndex = 11;
this.contextMenuBar1.TabStop = false;
//
// bRichPopup
//
this.bRichPopup.AutoExpandOnClick = true;
this.bRichPopup.GlobalName = "bRichPopup";
this.bRichPopup.Name = "bRichPopup";
this.bRichPopup.PopupAnimation = DevComponents.DotNetBar.ePopupAnimation.SystemDefault;
this.bRichPopup.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] {
this.bCut,
this.bCopy,
this.bPaste,
this.bDelete,
this.bSelectAll});
this.bRichPopup.Text = "Rich Edit Popup";
//
// bCut
//
this.bCut.GlobalName = "bCut";
this.bCut.ImageIndex = 0;
this.bCut.Name = "bCut";
this.bCut.PopupAnimation = DevComponents.DotNetBar.ePopupAnimation.SystemDefault;
this.bCut.Text = "Cu&t";
//
// bCopy
//
this.bCopy.GlobalName = "bCopy";
this.bCopy.ImageIndex = 1;
this.bCopy.Name = "bCopy";
this.bCopy.PopupAnimation = DevComponents.DotNetBar.ePopupAnimation.SystemDefault;
this.bCopy.Text = "&Copy";
//
// bPaste
//
this.bPaste.GlobalName = "bPaste";
this.bPaste.ImageIndex = 2;
this.bPaste.Name = "bPaste";
this.bPaste.PopupAnimation = DevComponents.DotNetBar.ePopupAnimation.SystemDefault;
this.bPaste.Text = "&Paste";
//
// bDelete
//
this.bDelete.GlobalName = "bDelete";
this.bDelete.Name = "bDelete";
this.bDelete.PopupAnimation = DevComponents.DotNetBar.ePopupAnimation.SystemDefault;
this.bDelete.Text = "&Delete";
//
// bSelectAll
//
this.bSelectAll.BeginGroup = true;
this.bSelectAll.GlobalName = "bSelectAll";
this.bSelectAll.Name = "bSelectAll";
this.bSelectAll.PopupAnimation = DevComponents.DotNetBar.ePopupAnimation.SystemDefault;
this.bSelectAll.Text = "Select &All";
//
// dotNetBarManager1
//
this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.F1);
this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.CtrlC);
this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.CtrlA);
this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.CtrlV);
this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.CtrlX);
this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.CtrlZ);
this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.CtrlY);
this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.Del);
this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.Ins);
this.dotNetBarManager1.BottomDockSite = this.dockSite4;
this.dotNetBarManager1.DefinitionName = "";
this.dotNetBarManager1.EnableFullSizeDock = false;
this.dotNetBarManager1.LeftDockSite = this.dockSite1;
this.dotNetBarManager1.ParentForm = this;
this.dotNetBarManager1.RightDockSite = this.dockSite2;
this.dotNetBarManager1.Style = DevComponents.DotNetBar.eDotNetBarStyle.Office2003;
this.dotNetBarManager1.ToolbarBottomDockSite = this.dockSite8;
this.dotNetBarManager1.ToolbarLeftDockSite = this.dockSite5;
this.dotNetBarManager1.ToolbarRightDockSite = this.dockSite6;
this.dotNetBarManager1.ToolbarTopDockSite = this.dockSite7;
this.dotNetBarManager1.TopDockSite = this.dockSite3;
//
// dockSite1
//
this.dockSite1.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
this.dockSite1.Dock = System.Windows.Forms.DockStyle.Left;
this.dockSite1.DocumentDockContainer = new DevComponents.DotNetBar.DocumentDockContainer();
this.dockSite1.Name = "dockSite1";
this.dockSite1.Size = new System.Drawing.Size(0, 225);
this.dockSite1.TabIndex = 12;
this.dockSite1.TabStop = false;
//
// dockSite2
//
this.dockSite2.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
this.dockSite2.Dock = System.Windows.Forms.DockStyle.Right;
this.dockSite2.DocumentDockContainer = new DevComponents.DotNetBar.DocumentDockContainer();
this.dockSite2.Location = new System.Drawing.Point(392, 0);
this.dockSite2.Name = "dockSite2";
this.dockSite2.Size = new System.Drawing.Size(0, 225);
this.dockSite2.TabIndex = 13;
this.dockSite2.TabStop = false;
//
// dockSite3
//
this.dockSite3.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
this.dockSite3.Dock = System.Windows.Forms.DockStyle.Top;
this.dockSite3.DocumentDockContainer = new DevComponents.DotNetBar.DocumentDockContainer();
this.dockSite3.Name = "dockSite3";
this.dockSite3.Size = new System.Drawing.Size(392, 0);
this.dockSite3.TabIndex = 14;
this.dockSite3.TabStop = false;
//
// dockSite4
//
this.dockSite4.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
this.dockSite4.Dock = System.Windows.Forms.DockStyle.Bottom;
this.dockSite4.DocumentDockContainer = new DevComponents.DotNetBar.DocumentDockContainer();
this.dockSite4.Location = new System.Drawing.Point(0, 225);
this.dockSite4.Name = "dockSite4";
this.dockSite4.Size = new System.Drawing.Size(392, 0);
this.dockSite4.TabIndex = 15;
this.dockSite4.TabStop = false;
//
// dockSite5
//
this.dockSite5.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
this.dockSite5.Dock = System.Windows.Forms.DockStyle.Left;
this.dockSite5.Name = "dockSite5";
this.dockSite5.Size = new System.Drawing.Size(0, 225);
this.dockSite5.TabIndex = 16;
this.dockSite5.TabStop = false;
//
// dockSite6
//
this.dockSite6.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
this.dockSite6.Dock = System.Windows.Forms.DockStyle.Right;
this.dockSite6.Location = new System.Drawing.Point(392, 0);
this.dockSite6.Name = "dockSite6";
this.dockSite6.Size = new System.Drawing.Size(0, 225);
this.dockSite6.TabIndex = 17;
this.dockSite6.TabStop = false;
//
// dockSite7
//
this.dockSite7.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
this.dockSite7.Dock = System.Windows.Forms.DockStyle.Top;
this.dockSite7.Name = "dockSite7";
this.dockSite7.Size = new System.Drawing.Size(392, 0);
this.dockSite7.TabIndex = 18;
this.dockSite7.TabStop = false;
//
// dockSite8
//
this.dockSite8.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
this.dockSite8.Dock = System.Windows.Forms.DockStyle.Bottom;
this.dockSite8.Location = new System.Drawing.Point(0, 225);
this.dockSite8.Name = "dockSite8";
this.dockSite8.Size = new System.Drawing.Size(392, 0);
this.dockSite8.TabIndex = 19;
this.dockSite8.TabStop = false;
//
// Form1
//
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
this.ClientSize = new System.Drawing.Size(392, 225);
this.Controls.AddRange(new System.Windows.Forms.Control[] {
this.contextMenuBar1,
this.cboStyle,
this.cmdClose,
this.cmdPopupBar,
this.cmdPopupMenu,
this.richTextBox1,
this.dockSite1,
this.dockSite2,
this.dockSite3,
this.dockSite4,
this.dockSite5,
this.dockSite6,
this.dockSite7,
this.dockSite8});
this.Name = "Form1";
this.Text = "DotNetBar Popup Sample";
this.Load = new System.EventHandler(this.Form1_Load);
((System.ComponentModel.ISupportInitialize)(this.contextMenuBar1)).EndInit();
this.ResumeLayout(false);
}
#endregion
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.Run(new Form1());
}
private void cmdClose_Click(object sender, System.EventArgs e)
{
this.Close();
}
private void Form1_Load(object sender, System.EventArgs e)
{
cboStyle.SelectedIndex=0;
}
private void PopupMenu(object sender, System.EventArgs e)
{
if(m_PopupFromCode==null)
CreatePopupMenu();
// Apply style
DevComponents.DotNetBar.eDotNetBarStyle style=DevComponents.DotNetBar.eDotNetBarStyle.Office2003;
if(((DevComponents.Editors.ComboItem)cboStyle.SelectedItem).Text!="Office2003")
style=DevComponents.DotNetBar.eDotNetBarStyle.VS2005;
m_PopupFromCode.Style=style;
// MUST ALWAYS register popup with DotNetBar Manager if popup does not belong to ContextMenus collection
dotNetBarManager1.RegisterPopup(m_PopupFromCode);
// Place the menu just below the button
Control ctrl=sender as Control;
Point p=this.PointToScreen(new Point(ctrl.Left,ctrl.Bottom));
m_PopupFromCode.PopupMenu(p);
}
private void PopupBar(object sender, System.EventArgs e)
{
if(m_PopupFromCode==null)
CreatePopupMenu();
// Apply style
DevComponents.DotNetBar.eDotNetBarStyle style=DevComponents.DotNetBar.eDotNetBarStyle.Office2003;
if(((DevComponents.Editors.ComboItem)cboStyle.SelectedItem).Text!="Office2003")
style=DevComponents.DotNetBar.eDotNetBarStyle.VS2005;
m_PopupFromCode.Style=style;
// MUST register with the DotNetBar manager if popup does not belong to ContextMenus collection
dotNetBarManager1.RegisterPopup(m_PopupFromCode);
// Set the pop-up width, not required but this is how you would change the popup bar width
// Popup bar height is calculated based on its inital width and nubmer of sub-items
m_PopupFromCode.PopupWidth=200;
// Place the menu just below the button
Control ctrl=sender as Control;
Point p=this.PointToScreen(new Point(ctrl.Left,ctrl.Bottom));
m_PopupFromCode.PopupBar(p);
}
private void CreatePopupMenu()
{
DevComponents.DotNetBar.ButtonItem item;
m_PopupFromCode=new DevComponents.DotNetBar.ButtonItem();
// Create items
item=new DevComponents.DotNetBar.ButtonItem("bCut");
item.Text="Cu&t";
// To remember: cannot use the ImageIndex for items that we create from code
item.Image=imageList1.Images[0];
m_PopupFromCode.SubItems.Add(item);
item=new DevComponents.DotNetBar.ButtonItem("bCopy");
item.Text="&Copy";
item.Image=imageList1.Images[1];
m_PopupFromCode.SubItems.Add(item);
item=new DevComponents.DotNetBar.ButtonItem("bPaste");
item.Text="&Paste";
item.Image=imageList1.Images[2];
m_PopupFromCode.SubItems.Add(item);
item=new DevComponents.DotNetBar.ButtonItem("bOpenFile");
item.Text="&Open File";
item.Enabled=false;
item.BeginGroup=true;
m_PopupFromCode.SubItems.Add(item);
item=new DevComponents.DotNetBar.ButtonItem("bInsertBreakpoint");
item.Text="Insert B&reakpoint";
item.BeginGroup=true;
m_PopupFromCode.SubItems.Add(item);
item=new DevComponents.DotNetBar.ButtonItem("bNewBreakpoint");
item.Text="New &Breakpoint...";
m_PopupFromCode.SubItems.Add(item);
item=new DevComponents.DotNetBar.ButtonItem("bRunToCursor");
item.Text="&Run To Cursor";
item.BeginGroup=true;
m_PopupFromCode.SubItems.Add(item);
item=new DevComponents.DotNetBar.ButtonItem("bAddTask");
item.Text="Add Task List S&hortcut";
item.BeginGroup=true;
m_PopupFromCode.SubItems.Add(item);
// Setup side-bar, make sure that image that is used fits, or exceeds the height
// Side-bar will be displayed only for popup menus
DevComponents.DotNetBar.SideBarImage si=new DevComponents.DotNetBar.SideBarImage();
si.Picture=new Bitmap(typeof(Popup.Form1),"devco.jpg");
// If image exceeds the size of the popup menu this specifies the image alignment
si.Alignment=DevComponents.DotNetBar.eAlignment.Bottom;
// If there is no image specified gradient can be used
si.GradientColor1=Color.Orange;
si.GradientColor2=Color.Black;
m_PopupFromCode.PopUpSideBar=si;
}
private void BarItemClick(object sender, EventArgs e)
{
DevComponents.DotNetBar.BaseItem item=sender as DevComponents.DotNetBar.BaseItem;
MessageBox.Show("Item '" item.Text "' clicked.");
}
private void dotNetBarManager1_PopupShowing(object sender, System.EventArgs e)
{
BaseItem popupParent=sender as BaseItem;
if(popupParent==null)
return;
// Disable Select All
popupParent.SubItems["bPaste"].Enabled=false;
}
}
}
好例子网口号:伸出你的我的手 — 分享!
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明


网友评论
我要评论