| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163 |
- using Community.VisualStudio.Toolkit;
- using System;
- using System.Collections.Generic;
- using System.Drawing;
- using System.Runtime.InteropServices;
- using System.Windows.Forms;
- using VberAdmin.Models;
- namespace VberAdmin.WinForm
- {
- public delegate void GeneratorCodeStart();
- public partial class VberForm : Form
- {
- public event GeneratorCodeStart OnGeneratorCodeStart;
- public VberForm()
- {
- InitializeComponent();
- }
- public VberForm(TemplateViewModel viewModel)
- {
- InitializeComponent();
- ViewModel = viewModel;
- _parentPath = tPathParent.Text;
- }
- [DllImport("user32.dll")]
- public static extern bool ReleaseCapture();
- [DllImport("user32.dll")]
- public static extern bool SendMessage(IntPtr hwnd, int wMsg, int wParam, int lParam);
- private const int VmNclbuttondown = 0XA1;//定义鼠标左键按下
- private const int Htcaption = 2;
- public void SetVersion(string version, Color bg)
- {
- lab_version.Text = version;
- pHeader.BackColor = bg;
- pFooter.BackColor = bg;
- }
- /// <summary>
- /// 鼠标按下
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void Title_MouseDown(object sender, MouseEventArgs e)
- {
- //为当前应用程序释放鼠标捕获
- ReleaseCapture();
- //发送消息 让系统误以为在标题栏上按下鼠标
- SendMessage(Handle, VmNclbuttondown, Htcaption, 0);
- }
- public TemplateViewModel ViewModel { get; set; }
- private readonly string _parentPath;
- private void Form_Load(object sender, EventArgs e)
- {
- try
- {
- tFileName.Text = ViewModel.BaseFolder;
- tExtFilePath.Text = ViewModel.FileName;
- tPathDto.Text = ViewModel.DtoFolder;
- tPathService.Text = ViewModel.ServiceFolder;
- tPathController.Text = ViewModel.ControllerFolder;
- tPathView.Text = ViewModel.ViewsFolder;
- tProjectName.Text = ViewModel.ProjectName;
- tClassName.Text = ViewModel.ClassName;
- tPageTitle.Text = ViewModel.HtmlPageTitle;
- tModalTitle.Text = ViewModel.HtmlModalTitle;
- var columnList = new List<ColumnViewModel> { new ColumnViewModel { ColumnName = "Id", Comment = "Id" } };
- columnList.AddRange(ViewModel.Columns ?? new List<ColumnViewModel>());
- columnList.Add(new ColumnViewModel { ColumnName = "", Comment = "" });
- cPrimarykey.DataSource = columnList;
- cPrimarykey.SelectedIndex = 0;
- //tPathParent.Text = ViewModel.ParentPath;
- dgvColumns.DataSource = ViewModel.Columns;
- }
- catch (Exception ex)
- {
- VS.MessageBox.ShowError($@"系统出错![{ex.Message}]");
- }
- }
- private void btnStart_Click(object sender, EventArgs e)
- {
- try
- {
- ViewModel.ProjectName = tProjectName.Text;
- ViewModel.ClassName = tClassName.Text;
- ViewModel.HtmlPageTitle = tPageTitle.Text;
- ViewModel.HtmlModalTitle = tModalTitle.Text;
- ViewModel.ColumnPrimaryKey = cPrimarykey.SelectedValue.ToString();
- ViewModel.ParentPath = tPathParent.Text == _parentPath ? "" : tPathParent.Text;
- ViewModel.ExtFilePath = tExtFilePath.Text;
- //ViewModel.DtoFolder = tPathDto.Text ;//== ViewModel.DtoFolder ? "" : tPathDto.Text;
- //ViewModel.ServiceFolder = tPathService.Text;// == ViewModel.ServiceFolder ? "" : tPathService.Text;
- ViewModel.ControllerFolder = tPathController.Text;
- ViewModel.ViewsFolder = tPathView.Text;
- ViewModel.Columns = (List<ColumnViewModel>)dgvColumns.DataSource;
- ViewModel.IsCreateDto = cCreateDto.Checked;
- ViewModel.IsUpdateDto = cUpdateDto.Checked;
- ViewModel.IsListDto = cListDto.Checked;
- ViewModel.IsApplicationService = cService.Checked;
- ViewModel.IsIApplicationService = cServiceInterface.Checked;
- ViewModel.IsController = cController.Checked;
- ViewModel.IsView = cView.Checked;
- ViewModel.IsReplace = cReplace.Checked;
- ViewModel.IsMultipleSearch = cMulitSearch.Checked;
- DialogResult = DialogResult.OK;
- OnGeneratorCodeStart?.Invoke();
- }
- catch (Exception ex)
- {
- VS.MessageBox.ShowError($@"系统出错![{ex.Message}]");
- }
- }
- private void btnClose_Click(object sender, EventArgs e)
- {
- DialogResult = DialogResult.Cancel;
- Close();
- }
- #region tPathParent
- private void tPathParent_KeyPress(object sender, KeyPressEventArgs e)
- {
- e.Handled = e.KeyChar != '\b' && (e.KeyChar > '9' || e.KeyChar < '0') &&
- (e.KeyChar > 'Z' || e.KeyChar < 'A') && (e.KeyChar > 'z' || e.KeyChar < 'a');
- }
- private void tPathParent_GotFocus(object sender, EventArgs e)
- {
- if (tPathParent.Text == _parentPath)
- tPathParent.Text = "";
- }
- private void tPathParent_LostFocus(object sender, EventArgs e)
- {
- if (tPathParent.Text == "")
- tPathParent.Text = _parentPath;
- }
- #endregion tPathParent
- private void tExtFilePath_TextChanged(object sender, EventArgs e)
- {
- ViewModel.ExtFilePath = tExtFilePath.Text;
- tPathDto.Text = ViewModel.DtoFolder;
- tPathService.Text = ViewModel.ServiceFolder;
- }
- }
- }
|