using SelfHelpClient.BL;
|
|
using SelfHelpClient.BO;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.IO;
|
|
using System.Linq;
|
|
using System.Reflection;
|
|
using System.Text;
|
|
using System.Windows.Forms;
|
|
using System.Windows.Input;
|
|
|
|
namespace SelfHelpClient
|
|
{
|
|
public partial class MainForm : Form
|
|
{
|
|
private static MainForm mForm;
|
|
public static MainForm Form
|
|
{
|
|
get { return mForm; }
|
|
}
|
|
public MainForm()
|
|
{
|
|
if (!File.Exists("AppConfig.cfg"))
|
|
{
|
|
MessageBox.Show("请先配置服务器地址");
|
|
this.Close();
|
|
}
|
|
WeightBillBL.ServerUrl = File.ReadAllText("AppConfig.cfg");
|
|
mForm = this;
|
|
InitializeComponent();
|
|
DisableWPFTabletSupport();
|
|
}
|
|
|
|
private void selfBtn_Click(object sender, EventArgs e)
|
|
{
|
|
ReadCard();
|
|
if (Program.ve == null)
|
|
return;
|
|
if (Program.ve.BillType == 0)
|
|
{
|
|
DialogForm.ShowDialog("没有待办理业务", 5);
|
|
return;
|
|
}
|
|
new SelfHelpForm(Program.ve.ID).ShowDialog();
|
|
//this.Hide();
|
|
}
|
|
|
|
private void weightBtn_Click(object sender, EventArgs e)
|
|
{
|
|
ReadCard();
|
|
if (Program.ve == null)
|
|
return;
|
|
new WeightForm(Program.ve).Show();
|
|
this.Hide();
|
|
}
|
|
|
|
void ReadCard()
|
|
{
|
|
Program.ve = null;
|
|
var reader = new ReadCardForm();
|
|
reader.ShowDialog();
|
|
}
|
|
|
|
private void closeBtn_Click(object sender, EventArgs e)
|
|
{
|
|
this.Close();
|
|
}
|
|
|
|
public static void DisableWPFTabletSupport()
|
|
{
|
|
// Get a collection of the tablet devices for this window.
|
|
var devices = System.Windows.Input.Tablet.TabletDevices;
|
|
|
|
if (devices.Count > 0)
|
|
{
|
|
// Get the Type of InputManager.
|
|
Type inputManagerType = typeof(System.Windows.Input.InputManager);
|
|
|
|
// Call the StylusLogic method on the InputManager.Current instance.
|
|
object stylusLogic = inputManagerType.InvokeMember("StylusLogic",
|
|
BindingFlags.GetProperty | BindingFlags.Instance | BindingFlags.NonPublic,
|
|
null, InputManager.Current, null);
|
|
|
|
if (stylusLogic != null)
|
|
{
|
|
// Get the type of the device class.
|
|
Type devicesType = devices.GetType();
|
|
|
|
// Loop until there are no more devices to remove.
|
|
int count = devices.Count + 1;
|
|
|
|
while (devices.Count > 0)
|
|
{
|
|
// Remove the first tablet device in the devices collection.
|
|
devicesType.InvokeMember("HandleTabletRemoved", BindingFlags.InvokeMethod | BindingFlags.Instance | BindingFlags.NonPublic, null, devices, new object[] { (uint)0 });
|
|
|
|
count--;
|
|
|
|
if (devices.Count != count)
|
|
{
|
|
throw new Win32Exception("Unable to remove real-time stylus support.");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|