📄 frmmain.cs
字号:
tabStrip1.Style=eTabStripStyle.Flat;
dotNetBarManager1.Bars["barTaskPane"].BackColor=Color.FromArgb(245,245,245);
((ControlContainerItem)dotNetBarManager1.GetItem("cTaskShowatstartup")).Control.BackColor=Color.FromArgb(245,245,245);
}
}
private void TaskPaneShowAtStartup(object sender, EventArgs e)
{
MessageBox.Show("This item is here for demonstration purposes only and code should be added to save the state of it.");
}
private void ManagerDefinitionLoaded(object sender, EventArgs e)
{
// Assign optional "Customize" menu to the bar that contains this item
dotNetBarManager1.Bars["barTaskList"].CustomizeMenu=(PopupItem)dotNetBarManager1.ContextMenus["bTaskListMenu"];
}
private void dotNetBarManager1_MouseEnter(object sender, System.EventArgs e)
{
// Sync Status-bar with the item tooltip...
BaseItem item=sender as BaseItem;
if(item==null)
return;
dotNetBarManager1.Bars["barStatus"].Items["lStatus"].Text=item.Tooltip;
// Disable timer...
}
private void dotNetBarManager1_MouseLeave(object sender, System.EventArgs e)
{
dotNetBarManager1.Bars["barStatus"].Items["lStatus"].Text="";
}
private void frmMain_Load(object sender, System.EventArgs e)
{
ChangeDotNetBarStyle(eDotNetBarStyle.Office2003);
EnableFileItems();
// This makes sure that Theme support is enabled by the end-user as well as present on this OS
// Neccessary for Automatic Tab-Strip Mdi support
tabStrip1.MdiForm=this;
// Setup Context menu for the barTaskList TabStrip...
Bar bar=dotNetBarManager1.Bars["barTaskList"];
dotNetBarManager1.SetContextMenuEx(bar,"bDockContext");
}
private void SwitchWorkingMode(bool tabbedMdi)
{
if(tabbedMdi)
{
// Switch to Tabbed Mdi Interface
dotNetBarManager1.MdiSystemItemVisible=false;
tabStrip1.MdiTabbedDocuments=true;
dotNetBarManager1.Bars["windowlist"].Visible=false;
}
else
{
// Switch to standard Mdi Interface
tabStrip1.Visible=false;
dotNetBarManager1.MdiSystemItemVisible=true;
tabStrip1.MdiTabbedDocuments=false;
tabStrip1.MdiForm=null;
SyncMdiTabbedBar();
}
}
private void MdiClientControlAddRemove(object sender, ControlEventArgs e)
{
if(e.Control is Form)
SyncMdiTabbedBar();
}
private void SyncMdiTabbedBar()
{
if(tabStrip1.Visible)
{
// Hide window list bar
dotNetBarManager1.Bars["windowlist"].Visible=false;
}
else
{
if(this.MdiChildren.Length>0)
{
dotNetBarManager1.Bars["windowlist"].Visible=true;
dotNetBarManager1.Bars["windowlist"].DockLine=1;
dotNetBarManager1.Bars["windowlist"].RecalcLayout();
}
else
dotNetBarManager1.Bars["windowlist"].Visible=false;
}
}
private TabItem TabItemFromPoint(Point pClient)
{
if(!tabStrip1.ClientRectangle.Contains(pClient))
return null;
foreach(TabItem tab in tabStrip1.Tabs)
{
if(tab.Visible && tab.DisplayRectangle.Contains(pClient))
return tab;
}
return null;
}
private void dotNetBarManager1_PopupOpen(object sender, DevComponents.DotNetBar.PopupOpenEventArgs e)
{
BaseItem item=sender as BaseItem;
if(item==null)
return;
if(item.Name=="bTabContext")
{
// Enable/Disable the document related menu items based on where user right-clicked...
TabItem tab=TabItemFromPoint(tabStrip1.PointToClient(Control.MousePosition));
// If no tab is under the mouse disable document related items...
if(tab==null)
{
item.SubItems["bClose"].Enabled=false;
item.SubItems["bSave"].Enabled=false;
}
else
{
item.SubItems["bClose"].Enabled=true;
item.SubItems["bSave"].Enabled=true;
// Make sure that tab under the mouse is active tab
tabStrip1.SelectedTab=tab;
}
}
else if(item.Name=="bDockContext")
{
Bar bar=dotNetBarManager1.Bars["barTaskList"];
// Display our context menu only if user clicks on the bar caption or tab strip control
if(!bar.GrabHandleRect.Contains(bar.PointToClient(Control.MousePosition)) && bar.DockTabControl!=null && !bar.DockTabControl.Bounds.Contains(bar.PointToClient(Control.MousePosition)))
{
e.Cancel=true;
return;
}
item.SubItems.Clear();
ButtonItem contextItem=null;
foreach(BaseItem dockItem in bar.Items)
{
contextItem=new ButtonItem(dockItem.Name,dockItem.Text);
contextItem.GlobalItem=false;
contextItem.Click+=new EventHandler(this.DockContextClick);
item.SubItems.Add(contextItem);
contextItem.Checked=dockItem.Visible;
}
contextItem=new ButtonItem("bc_tabnavigation","Tab Navigation");
contextItem.Checked=bar.TabNavigation;
contextItem.BeginGroup=true;
contextItem.Click+=new EventHandler(this.DockContextClick);
item.SubItems.Add(contextItem);
PopupItem popup=item as PopupItem;
}
}
private void DockContextClick(object sender, EventArgs e)
{
ButtonItem item=sender as ButtonItem;
if(item==null)
return;
Bar bar=dotNetBarManager1.Bars["barTaskList"];
if(item.Name=="bc_tabnavigation")
{
bar.TabNavigation=!item.Checked;
bar.DockTabControl.Refresh();
return;
}
if(bar.Items.Contains(item.Name))
bar.Items[item.Name].Visible=!item.Checked;
bar.RecalcLayout();
}
private void frmMain_Move(object sender, System.EventArgs e)
{
this.CloseInfoBalloon();
this.CloseSearch();
}
private void CloseInfoBalloon()
{
if(m_InfoBalloon!=null)
{
m_InfoBalloon.Close();
m_InfoBalloon.Dispose();
m_InfoBalloon=null;
}
}
private void CloseSearch()
{
if(m_Search!=null)
{
m_Search.Close();
m_Search.Dispose();
m_Search=null;
}
}
public void SearchActiveDocument(string text)
{
try
{
string path=System.IO.Path.GetDirectoryName(Application.ExecutablePath)+@"\BillData\"+text+@".xml";
System.Xml.XmlDocument xmldoc=new System.Xml.XmlDocument();
xmldoc.Load(path);
frmDocument doc=new frmDocument();
doc.MdiParent=this;
doc.WindowState=FormWindowState.Maximized;
doc.Show();
doc.Update();
doc.Text=text;
forOpen(doc,ref xmldoc);
}
catch
{
MessageBox.Show("未能打开发票信息,可能该发票不存在或数据已经被损坏!");
}
}
private void forOpen(System.Windows.Forms.Control crl,ref System.Xml.XmlDocument xmldoc)
{
for(int i=0;i<crl.Controls.Count;i++)
{
if(crl.Controls[i].Controls.Count>0)
{
forOpen(crl.Controls[i],ref xmldoc);
}
if(crl.Controls[i].Name.Length<=3)
{
continue;
}
if(crl.Controls[i].Name.Substring(0,3)=="Tbx")
{
crl.Controls[i].Text=xmldoc["Bill"][crl.Controls[i].Name].InnerText;
}
if(crl.Controls[i].Name.Substring(0,3)=="Cbx")
{
crl.Controls[i].Text=xmldoc["Bill"][crl.Controls[i].Name].InnerText;
}
if(crl.Controls[i].Name.Substring(0,3)=="Lbx")
{
ListView lvi=crl.Controls[i] as ListView;
try
{
for(int j=0;j<6;j++)
{
ListViewItem lvitem=new ListViewItem();
lvitem.Text=xmldoc["Bill"][crl.Controls[i].Name+j.ToString()+"0"].InnerText;
lvitem.SubItems.Add(xmldoc["Bill"][crl.Controls[i].Name+j.ToString()+"1"].InnerText);
lvitem.SubItems.Add(xmldoc["Bill"][crl.Controls[i].Name+j.ToString()+"2"].InnerText);
lvitem.SubItems.Add(xmldoc["Bill"][crl.Controls[i].Name+j.ToString()+"3"].InnerText);
lvi.Items.Add(lvitem);
}
}
catch
{}
// for(int j=0;j<lvi.Items.Count;j++)
// {
// XmlElement newTitle=xmldoc.CreateElement(crl.Controls[i].Name+j.ToString());
// newTitle.InnerText=lvi.Items[j].SubItems[0].Text;
// xmldoc["Bill"].AppendChild(newTitle);
// }
}
}
}
private void dotNetBarManager1_DockTabChange(object sender, DevComponents.DotNetBar.DockTabChangeEventArgs e)
{
Bar bar=sender as Bar;
if(bar==null || e.NewTab==null)
return;
bar.Text=e.NewTab.Text;
}
private void PrintPreview()
{
this.pageSetupDialog1.ShowDialog();
return;
}
private void Printer()
{
// PageSettings ps = new PageSettings();
// ps.PaperSize = new PaperSize("ABC2",600,100);
// ps.Margins = new Margins(0,0,0,0);
// this.printDoc.DefaultPageSettings=ps;
this.printDoc.DefaultPageSettings=this.pageSetupDialog1.PageSettings;
this.printDoc.Print();
}
private void printDoc_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
e.HasMorePages = false;
// e.Graphics.DrawString("江苏金茂",new Font("宋体",10F),Brushes.Black,192F,100F);
try
{
string path=System.IO.Path.GetDirectoryName(Application.ExecutablePath)+@"\SetPoint.xml";
System.Xml.XmlDocument xmldoc=new System.Xml.XmlDocument();
xmldoc.Load(path);
if(this.ActiveMdiChild==null)
return;
frmDocument doc=this.ActiveMdiChild as frmDocument;
if(doc==null)
return;
this.forPrint(doc,ref e,ref xmldoc);
}
catch(Exception err)
{
MessageBox.Show("打印格式未被找到或已经损坏!");
return;
}
}
private void forPrint(System.Windows.Forms.Control crl,ref System.Drawing.Printing.PrintPageEventArgs e,ref System.Xml.XmlDocument xmldoc)
{
string font=xmldoc["Setup"]["Font"].InnerText;
float size=float.Parse(xmldoc["Setup"]["Size"].InnerText);
for(int i=0;i<crl.Controls.Count;i++)
{
if(crl.Controls[i].Controls.Count>0)
{
this.forPrint(crl.Controls[i],ref e,ref xmldoc);
}
if(crl.Controls[i].Name.Length<=3||crl.Controls[i].Name=="TbxID")
{
continue;
}
if(crl.Controls[i].Name.Substring(0,3)=="Cbx"||crl.Controls[i].Name.Substring(0,3)=="Tbx")
{
try
{
float x=(float.Parse(xmldoc["Setup"][crl.Controls[i].Name].Attributes["x"].InnerText)+float.Parse(xmldoc["Setup"]["TheX"].InnerText))*40;
float y=(float.Parse(xmldoc["Setup"][crl.Controls[i].Name].Attributes["y"].InnerText)+float.Parse(xmldoc["Setup"]["TheY"].InnerText))*40;
e.Graphics.DrawString(crl.Controls[i].Text,new Font(font,size),Brushes.Black,x,y);
}
catch(Exception err)
{
string ii=err.ToString();
}
}
if(crl.Controls[i].Name.Substring(0,3)=="Lbx")
{
ListView lvi=crl.Controls[i] as ListView;
for(int j=0;j<lvi.Items.Count;j++)
{
for(int k=0;k<lvi.Items[j].SubItems.Count;k++)
{
try
{
float x=(float.Parse(xmldoc["Setup"][crl.Controls[i].Name].Attributes["x"].InnerText)+float.Parse(xmldoc["Setup"]["TheX"].InnerText)+float.Parse(xmldoc["Setup"][crl.Controls[i].Name].Attributes["row"+k.ToString()].InnerText))*40;
float y=(float.Parse(xmldoc["Setup"][crl.Controls[i].Name].Attributes["y"].InnerText)+float.Parse(xmldoc["Setup"]["TheY"].InnerText)+float.Parse(xmldoc["Setup"][crl.Controls[i].Name].Attributes["cow"+j.ToString()].InnerText))*40;
e.Graphics.DrawString(lvi.Items[j].SubItems[k].Text,new Font(font,size),Brushes.Black,x,y);
}
catch
{}
}
}
}
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -