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.Text.RegularExpressions;
using System.Threading.Tasks;
using System.Windows.Forms;
using DPumpHydr.WinFrmUI.RLT.Controls;
using DPumpHydr.WinFrmUI.Volute.ViewModel;
namespace DPumpHydr.WinFrmUI.Volute
{
///
/// 断面基本信息(形状等)
///
public partial class ctrlSectionBundleInfo : ParasInfoBaseCtrl
{
public ctrlSectionBundleInfo()
{
InitializeComponent();
BuildAllTips();
BuildIcon();
//skyTextBox断面y18.Click += (ss, ee) =>
//{
// HightLightSectCurve(8);
//};
//skyTextBox断面r18.Click += (ss, ee) =>
//{
// HightLightSectCurve(8);
//};
//skyTextBox断面H18.Click += (ss, ee) =>
//{
// HightLightSectCurve(8);
//};
crownLabelVIII.DoubleClick += (ss, ee) =>
{
HightLightSectCurve(8);
};
//skyTextBox断面y17.Click += (ss, ee) =>
//{
// HightLightSectCurve(7);
//};
//skyTextBox断面r17.Click += (ss, ee) =>
//{
// HightLightSectCurve(7);
//};
//skyTextBox断面H17.Click += (ss, ee) =>
//{
// HightLightSectCurve(7);
//};
crownLabelVII.DoubleClick += (ss, ee) =>
{
HightLightSectCurve(7);
};
//skyTextBox断面y16.Click += (ss, ee) =>
//{
// HightLightSectCurve(6);
//};
//skyTextBox断面r16.Click += (ss, ee) =>
//{
// HightLightSectCurve(6);
//};
//skyTextBox断面H16.Click += (ss, ee) =>
//{
// HightLightSectCurve(6);
//};
crownLabelVI.DoubleClick += (ss, ee) =>
{
HightLightSectCurve(6);
};
//skyTextBox断面y15.Click += (ss, ee) =>
//{
// HightLightSectCurve(5);
//};
//skyTextBox断面r15.Click += (ss, ee) =>
//{
// HightLightSectCurve(5);
//};
//skyTextBox断面H15.Click += (ss, ee) =>
//{
// HightLightSectCurve(5);
//};
crownLabelV.DoubleClick += (ss, ee) =>
{
HightLightSectCurve(5);
};
//skyTextBox断面y14.Click += (ss, ee) =>
//{
// HightLightSectCurve(4);
//};
//skyTextBox断面r14.Click += (ss, ee) =>
//{
// HightLightSectCurve(4);
//};
//skyTextBox断面H14.Click += (ss, ee) =>
//{
// HightLightSectCurve(4);
//};
crownLabelIV.DoubleClick += (ss, ee) =>
{
HightLightSectCurve(4);
};
//skyTextBox断面y13.Click += (ss, ee) =>
//{
// HightLightSectCurve(3);
//};
//skyTextBox断面r13.Click += (ss, ee) =>
//{
// HightLightSectCurve(3);
//};
//skyTextBox断面H13.Click += (ss, ee) =>
//{
// HightLightSectCurve(3);
//};
crownLabelIII.DoubleClick += (ss, ee) =>
{
HightLightSectCurve(3);
};
//skyTextBox断面y12.Click += (ss, ee) =>
//{
// HightLightSectCurve(2);
//};
//skyTextBox断面r12.Click += (ss, ee) =>
//{
// HightLightSectCurve(2);
//};
//skyTextBox断面H12.Click += (ss, ee) =>
//{
// HightLightSectCurve(2);
//};
crownLabelII.DoubleClick += (ss, ee) =>
{
HightLightSectCurve(2);
};
//skyTextBox断面y11.Click += (ss, ee) =>
//{
// HightLightSectCurve(1);
//};
//skyTextBox断面r11.Click += (ss, ee) =>
//{
// HightLightSectCurve(1);
//};
//skyTextBox断面H11.Click += (ss, ee) =>
//{
// HightLightSectCurve(1);
//};
crownLabelI.DoubleClick += (ss, ee) =>
{
HightLightSectCurve(1);
};
}
ViewModel.SectionBundleInfo _sectionBundleInfo = null;
ViewModel.HdrBaseInfo _hdrBaseInfo = null;
ViewModel.GeomBaseInfo _geomBaseInfo = null;
public void SetBindingData(ViewModel.SectionBundleInfo sectionBundle_info)
{
_sectionBundleInfo= sectionBundle_info;
}
public void ShowPage(
ViewModel.HdrBaseInfo base_info,
ViewModel.GeomBaseInfo geom_info,
DPumpHydr.ViewModel.eWizardStepDiretion step_direction, bool isRefreshModel = true)
{
if (step_direction == DPumpHydr.ViewModel.eWizardStepDiretion.后退)
{
return;
}
if(_hdrBaseInfo == null && _geomBaseInfo == null)
{
_hdrBaseInfo = base_info;
_geomBaseInfo = geom_info;
}
if (isRefreshModel )
{
return;
}
if (_sectionBundleInfo == null)
{
this._hdrBaseInfo = base_info;
this._geomBaseInfo = geom_info;
_sectionBundleInfo = new ViewModel.SectionBundleInfo();
_sectionBundleInfo.BaseWidth = _geomBaseInfo.B3;
_sectionBundleInfo.BaseCircleRadius = _geomBaseInfo.D3 / 2;
_sectionBundleInfo.ResetAllParas(_hdrBaseInfo, _geomBaseInfo);
}
else
{
if (Math.Abs(_sectionBundleInfo.BaseWidth - _geomBaseInfo.B3) < 1 &&
Math.Abs(_sectionBundleInfo.BaseCircleRadius - _geomBaseInfo.D3 / 2) < 1 )
{
_sectionBundleInfo.BaseWidth = _geomBaseInfo.B3;
_sectionBundleInfo.BaseCircleRadius = _geomBaseInfo.D3 / 2;
if (_hdrBaseInfo.n != base_info.n || _hdrBaseInfo.Q != base_info.Q || _hdrBaseInfo.H != base_info.H || _hdrBaseInfo.IsSXB != base_info.IsSXB)
{
this._hdrBaseInfo = base_info;
this._geomBaseInfo = geom_info;
_sectionBundleInfo.InitialK3(this._hdrBaseInfo, this._geomBaseInfo);
RefreshAllSectPara(_sectionBundleInfo);
_sectionBundleInfo.RecalculateArea(this._hdrBaseInfo, this._geomBaseInfo);
RefrehSectBundlePara();
if (OnRefreshShape != null)
{
ViewModel.SectionBundleInfo paras = GetBindingData(out string error);
if (paras == null)
return;
//textBox割舌角度
OnRefreshShape.Invoke(paras);
}
//RefreshShape(_sectionBundleInfo);
}
else
{
this._hdrBaseInfo = base_info;
this._geomBaseInfo = geom_info;
RefreshShape(_sectionBundleInfo);
}
return;
}
}
RefreshAllSectPara(_sectionBundleInfo);
RefreshShape(_sectionBundleInfo);
}
private void pictureBoxRefreshK3_Click(object sender, EventArgs e)
{
_sectionBundleInfo.InitialK3(this._hdrBaseInfo, this._geomBaseInfo);
RefreshAllSectPara(_sectionBundleInfo);
}
//
public void RefreshAllSectPara(ViewModel.SectionBundleInfo paras)
{
this._sectionBundleInfo = paras;
this.textBoxK3.Text = _sectionBundleInfo.K3.ToString();
this.textBoxV3.Text = _sectionBundleInfo.V3.ToString();
RefrehSectBundlePara();
if (_sectionBundleInfo.ShapeType == eSectionShapeType.对称)
{
RBtn断面对称梯形.Checked = true;
RBtn不对称梯形.Checked = false;
RBtn矩形.Checked = false;
}
if (_sectionBundleInfo.ShapeType == eSectionShapeType.不对称)
{
RBtn断面对称梯形.Checked = false;
RBtn不对称梯形.Checked = true;
RBtn矩形.Checked = false;
}
if (_sectionBundleInfo.ShapeType == eSectionShapeType.矩形)
{
RBtn断面对称梯形.Checked = false;
RBtn不对称梯形.Checked = false;
RBtn矩形.Checked = true;
}
}
//改面积
public void RefreshSingleSectArea(int sectIndex, double area)
{
if (this._sectionBundleInfo == null)
return;
this._sectionBundleInfo.Area[sectIndex] = area;
this._sectionBundleInfo.CalcHeightByArea(_geomBaseInfo, sectIndex);
RefrehSectBundlePara();
if (OnRefreshShape == null)
return;
OnRefreshShape.Invoke(_sectionBundleInfo);
}
public ViewModel.SectionBundleInfo GetBindingData(out string error)
{
if (!Verify(out error))
{
return null;
}
error = null;
if (_sectionBundleInfo == null)
{
_sectionBundleInfo = new ViewModel.SectionBundleInfo();
}
if (RBtn断面对称梯形.Checked)
{
_sectionBundleInfo.ShapeType = eSectionShapeType.对称;
}
if (RBtn不对称梯形.Checked)
{
_sectionBundleInfo.ShapeType = eSectionShapeType.不对称;
}
if (RBtn矩形.Checked)
{
_sectionBundleInfo.ShapeType = eSectionShapeType.矩形;
}
_sectionBundleInfo.V3 = Convert.ToDouble(this.textBoxV3.Text);
for (var argument = 1; argument <= 8; argument++)
{//skyTextBox断面H18
var controlname_y1 = $"skyTextBox断面y1{argument}";
var controlname_r1 = $"skyTextBox断面r1{argument}";
var controlname断面面积 = $"skyTextBox断面面积{argument}";
var controlnameh = $"skyTextBox断面H1{argument}";
SkyTextBox controlY1 = this.Controls.Find(controlname_y1, true).FirstOrDefault() as SkyTextBox;
SkyTextBox controlR1 = this.Controls.Find(controlname_r1, true).FirstOrDefault() as SkyTextBox;
SkyTextBox control断面面积 = this.Controls.Find(controlname断面面积, true).FirstOrDefault() as SkyTextBox;
SkyTextBox controlH = this.Controls.Find(controlnameh, true).FirstOrDefault() as SkyTextBox;
if (controlY1 != null)
{
_sectionBundleInfo.GaMa_Left[argument] = Convert.ToDouble(controlY1.Text);
_sectionBundleInfo.GaMa_Right[argument] = _sectionBundleInfo.GaMa_Left[argument];
}
if (controlR1 != null)
{
_sectionBundleInfo.R_Left[argument] = Convert.ToDouble(controlR1.Text);
_sectionBundleInfo.R_Right[argument] = _sectionBundleInfo.R_Left[argument];
}
if (control断面面积 != null)
_sectionBundleInfo.Area[argument] = Convert.ToDouble(control断面面积.Text);
if (controlH != null)
_sectionBundleInfo.H[argument] = Convert.ToDouble(controlH.Text);
}
return _sectionBundleInfo;
}
public bool Verify(out string error)
{
error = "";
bool isOk = true;
double v3 = 0;
if (string.IsNullOrEmpty(textBoxV3.Text) || !double.TryParse(textBoxV3.Text, out v3) || v3 <= 0.1)
{
error = "请输入必填项!";
isOk = false;
}
if (string.IsNullOrEmpty(skyTextBox断面y18.Text) || (!RBtn矩形.Checked && double.Parse(skyTextBox断面y18.Text) == 0)|| double.Parse(skyTextBox断面y18.Text) < 0)
{
error = "请输入必填项!";
isOk = false;
}
if (string.IsNullOrEmpty(skyTextBox断面r18.Text) || (!RBtn矩形.Checked && double.Parse(skyTextBox断面r18.Text) == 0)|| double.Parse(skyTextBox断面y18.Text) < 0)
{
error = "请输入必填项!";
isOk = false;
}
return isOk;
}
public bool IsParameterChange()
{
if (double.Parse(textBoxV3.Text) != this._sectionBundleInfo.V3)
{
return true;
}
if (RBtn断面对称梯形.Checked && this._sectionBundleInfo.ShapeType == eSectionShapeType.对称)
{
return true;
}
if (RBtn不对称梯形.Checked && this._sectionBundleInfo.ShapeType == eSectionShapeType.不对称)
{
return true;
}
if (RBtn矩形.Checked && this._sectionBundleInfo.ShapeType == eSectionShapeType.矩形)
{
return true;
}
if (double.Parse(skyTextBox断面y18.Text) != this._sectionBundleInfo.GaMa_Left[8])
{
return true;
}
if (double.Parse(skyTextBox断面r18.Text) != this._sectionBundleInfo.GaMa_Right[8])
{
return true;
}
return false;
}
private void BuildIcon()
{
//断面形状图片
metroTile对称梯形.BackgroundImage = GlobalResource.BuildImage("duichentixing.png", 97, 88);
metroTile不对称梯形.BackgroundImage = GlobalResource.BuildImage("buduichentixing.png", 97, 88);
metroTile矩形.BackgroundImage = GlobalResource.BuildImage("juxing.png", 97, 88);
}
private void BuildAllTips()
{
//metroToolTip提示.SetToolTip(this.metroTile对称梯形, "对称梯形");
//metroToolTip提示.SetToolTip(this.metroTile不对称梯形, "不对称梯形");
//metroToolTip提示.SetToolTip(this.metroTile矩形, "矩形");
//metroToolTip提示.SetToolTip(this.skyTextBox断面y18, "y1 解释");
//metroToolTip提示.SetToolTip(this.skyTextBox断面r18, "y2 解释");
}
private void metroTile断面形状1_Click(object sender, EventArgs e)
{
RBtn断面对称梯形.Checked = true;
RBtn不对称梯形.Checked = false;
RBtn矩形.Checked = false;
}
private void metroTile断面形状2_Click(object sender, EventArgs e)
{
RBtn断面对称梯形.Checked = false;
RBtn不对称梯形.Checked = true;
RBtn矩形.Checked = false;
}
private void metroTile断面形状3_Click(object sender, EventArgs e)
{
RBtn断面对称梯形.Checked = false;
RBtn不对称梯形.Checked = false;
RBtn矩形.Checked = true;
}
private void skyTextBox断面VIIIy1_TextChanged(object sender, EventArgs e)
{
if (sender is SkyTextBox skytextBox)
{
string lastChar = skytextBox.Name[skytextBox.Name.Length - 1].ToString();
int index = Convert.ToInt32(lastChar);
if (!double.TryParse(skytextBox.Text, out double result) && !string.IsNullOrEmpty(skytextBox.Text))
{
skytextBox.Text = _sectionBundleInfo.GaMa_Left[index].ToString();
}
}
}
private void skyTextBox断面VIIIy2_TextChanged(object sender, EventArgs e)
{
if (sender is SkyTextBox skytextBox)
{
string lastChar = skytextBox.Name[skytextBox.Name.Length - 1].ToString();
int index = Convert.ToInt32(lastChar);
if (!double.TryParse(skytextBox.Text, out double result) && !string.IsNullOrEmpty(skytextBox.Text))
{
skytextBox.Text = _sectionBundleInfo.GaMa_Right[index].ToString();
}
if (string.IsNullOrEmpty(skytextBox.Text))
{
MessageBox.Show("r不合理!请重新输入");
}
double v = 0;
if (!double.TryParse(skytextBox.Text, out v))
{
MessageBox.Show("请输入数字格式!");
return;
}
if (Convert.ToDouble(skytextBox.Text) != _sectionBundleInfo.R_Left[index])
{
Judgment_R(index);
}
else
{
skytextBox.BackColor = Color.White;
}
}
}
public bool Judgment_R(int index)
{
bool isreasonable = true;
SkyTextBox controlr1 = this.Controls.Find($"skyTextBox断面r1{index}", true).FirstOrDefault() as SkyTextBox;
SkyTextBox controlGaMa1 = this.Controls.Find($"skyTextBox断面y1{index}", true).FirstOrDefault() as SkyTextBox;
SkyTextBox controlh1 = this.Controls.Find($"skyTextBox断面H1{index}", true).FirstOrDefault() as SkyTextBox;
if (RBtn矩形.Checked)
{
if (Convert.ToDouble(controlh1.Text) - Convert.ToDouble(controlr1.Text) < 1|| _sectionBundleInfo.BaseWidth- (Convert.ToDouble(controlr1.Text)*2) < 1)
{
controlr1.BackColor = Color.OrangeRed;
MessageBox.Show("r不合理!请重新输入");
}
else
{
controlr1.BackColor = Color.White;
}
}
else
{
//目前这个只检测对称的 //若不对称更换半径角度等参数重新计算另一边x
var x = Math.Tan(Convert.ToDouble(controlGaMa1.Text) * Math.PI / 180) * Convert.ToDouble(controlh1.Text)
- (Math.Tan(Convert.ToDouble(controlGaMa1.Text) * Math.PI / 180) * Math.Tan(Convert.ToDouble(controlGaMa1.Text) / 2 * Math.PI / 180) * Convert.ToDouble(controlr1.Text))
- (Math.Tan(Convert.ToDouble(controlGaMa1.Text) * Math.PI / 180) * Convert.ToDouble(controlr1.Text)) - Convert.ToDouble(controlr1.Text);
var c = _sectionBundleInfo.R_out / 1000;
var TopWidth = _sectionBundleInfo.BaseWidth + (2 * x);
var Slash = (Convert.ToDouble(controlh1.Text) - Convert.ToDouble(controlr1.Text) - (Math.Sin(Convert.ToDouble(controlGaMa1.Text) * Math.PI / 180) * Convert.ToDouble(controlr1.Text))) / Math.Cos(Convert.ToDouble(controlGaMa1.Text) * Math.PI / 180);
if ((!RBtn矩形.Checked && (TopWidth < c || Slash < c)) || Convert.ToDouble(controlr1.Text) == 0)
{
controlr1.BackColor = Color.OrangeRed;
MessageBox.Show("r不合理!请重新输入");
}
else
{
controlr1.BackColor = Color.White;
}
}
return isreasonable;
}
private void mBtn计算断面面积_Click(object sender, EventArgs e)
{
double v3 = 0;
if (string.IsNullOrEmpty(textBoxV3.Text) || !double.TryParse(textBoxV3.Text, out v3) || v3 <= 0.1)
{
MessageBox.Show("请先输入蜗室平均速度!");
return;
}
if (_sectionBundleInfo == null)
{
_sectionBundleInfo = new ViewModel.SectionBundleInfo();
}
_sectionBundleInfo.V3 = v3;
_sectionBundleInfo.RecalculateArea(this._hdrBaseInfo, this._geomBaseInfo);
RefrehSectBundlePara();
if (OnRefreshShape != null)
{
ViewModel.SectionBundleInfo paras = GetBindingData(out string error);
if (paras == null)
return;
//textBox割舌角度
OnRefreshShape.Invoke(paras);
}
}
private void mlBtn更改断面角度_Click(object sender, EventArgs e)
{
//if (!RBtn断面对称梯形.Checked && !RBtn不对称梯形.Checked && !RBtn矩形.Checked)
//{
// MessageBox.Show("请先选择断面类型!");
// return;
//}
//if (string.IsNullOrEmpty(skyTextBox断面y18.Text) || string.IsNullOrEmpty(skyTextBox断面r18.Text))
//{
// //skyLabel提示y2.Visible = false;
// //skyLabel提示y1.Visible = false;
// //skyLabely1.Visible = true;
// //skyLabely2.Visible = true;
// //MessageBox.Show("请先输入y1、y2!");
// return;
//}
}
private void RBtn断面对称梯形_CheckedChanged(object sender)
{
if (RBtn断面对称梯形.Checked)
{
RefrehSectBundlePara();
RefreshShape(_sectionBundleInfo);
//skyTextBox断面y18.Enabled = true;
//skyTextBox断面r18.Enabled = false;
}
}
private void RBtn不对称梯形_CheckedChanged(object sender)
{
if (RBtn不对称梯形.Checked)
{
RefrehSectBundlePara();
RefreshShape(_sectionBundleInfo);
//skyTextBox断面y18.Enabled = true;
//skyTextBox断面r18.Enabled = true;
}
}
private void textBoxK3_TextChanged(object sender, EventArgs e)
{
double K3 = 0;
if (string.IsNullOrEmpty(textBoxK3.Text))
return;
if (!double.TryParse(textBoxK3.Text, out K3))
return;
if (K3 < 0.1)
return;
var g = 9.81;
this.textBoxV3.Text = Math.Round(K3 * Math.Sqrt(2 * g * _hdrBaseInfo.H), 2).ToString();
}
public Func> OnRefreshShape = null;
private void mBtn更新模型_Click(object sender, EventArgs e)
{
ViewModel.SectionBundleInfo paras = GetBindingData(out string error);
if (paras == null)
return;
RefreshShape(paras);
}
private void RefreshShape(ViewModel.SectionBundleInfo paras)
{
if (OnRefreshShape == null)
return;
var error_sects = OnRefreshShape.Invoke(paras);
for (var sect_index = 1; sect_index <= 8; sect_index++)
{
var controlnameGama1 = $"skyTextBox断面y1{sect_index}";
var controlnameRia1 = $"skyTextBox断面r1{sect_index}";
var controlname断面面积 = $"skyTextBox断面面积{sect_index}";
var controlnameHeight = $"skyTextBox断面H1{sect_index}";
SkyTextBox controly1 = this.Controls.Find(controlnameGama1, true).FirstOrDefault() as SkyTextBox;
SkyTextBox controly2 = this.Controls.Find(controlnameRia1, true).FirstOrDefault() as SkyTextBox;
SkyTextBox control断面面积 = this.Controls.Find(controlname断面面积, true).FirstOrDefault() as SkyTextBox;
SkyTextBox controH1 = this.Controls.Find(controlnameHeight, true).FirstOrDefault() as SkyTextBox;
if (error_sects != null && error_sects.Contains(sect_index))
{
controly1.BackColor = Color.OrangeRed;
controly2.BackColor = Color.OrangeRed;
control断面面积.BackColor = Color.OrangeRed;
controH1.BackColor = Color.OrangeRed;
}
else
{
controly1.BackColor = Color.White;
controly2.BackColor = Color.White;
control断面面积.BackColor = Color.White;
controH1.BackColor = Color.White;
}
}
}
public Action OnHightLightSectCurve = null;
private void HightLightSectCurve(int sectIndex)
{
if (OnHightLightSectCurve != null)
OnHightLightSectCurve.Invoke(sectIndex);
}
private void RefrehSectBundlePara()
{
for (var sect_index = 1; sect_index <= 8; sect_index++)
{
var controlnameGama1 = $"skyTextBox断面y1{sect_index}";
var controlnameRia1 = $"skyTextBox断面r1{sect_index}";
var controlname断面面积 = $"skyTextBox断面面积{sect_index}";
var controlnameHeight = $"skyTextBox断面H1{sect_index}";
SkyTextBox controly1 = this.Controls.Find(controlnameGama1, true).FirstOrDefault() as SkyTextBox;
SkyTextBox controly2 = this.Controls.Find(controlnameRia1, true).FirstOrDefault() as SkyTextBox;
SkyTextBox control断面面积 = this.Controls.Find(controlname断面面积, true).FirstOrDefault() as SkyTextBox;
SkyTextBox controH1 = this.Controls.Find(controlnameHeight, true).FirstOrDefault() as SkyTextBox;
controly1.Enabled = true;
if (controly1 != null)
controly1.Text = _sectionBundleInfo.GaMa_Left[sect_index].ToString();
if (controly2 != null)
controly2.Text = _sectionBundleInfo.R_Left[sect_index].ToString();
if (control断面面积 != null)
control断面面积.Text = _sectionBundleInfo.Area[sect_index].ToString();
if (controH1 != null)
controH1.Text = _sectionBundleInfo.H[sect_index].ToString();
}
}
private void skyTextBox断面r17_TextChanged(object sender, EventArgs e)
{
if (!double.TryParse(skyTextBox断面r17.Text, out double result) && !string.IsNullOrEmpty(skyTextBox断面r17.Text))
{
skyTextBox断面r17.Text = _sectionBundleInfo.GaMa_Right[7].ToString();
}
if (string.IsNullOrEmpty(skyTextBox断面r17.Text))
{
MessageBox.Show("r不合理!请重新输入");
}
if (Convert.ToDouble(skyTextBox断面r17.Text) != _sectionBundleInfo.R_Left[7])
{
Judgment_R(7);
}
}
private void skyTextBox断面y11_Enter(object sender, EventArgs e)
{
if (sender is SkyTextBox skytextBox)
{
string lastChar = skytextBox.Name[skytextBox.Name.Length - 1].ToString();
int index = Convert.ToInt32(lastChar);
HightLightSectCurve(index);
}
}
private void btnNextStep_Click(object sender, EventArgs e)
{
NextStep();
}
private void RBtn矩形_CheckedChanged(object sender)
{
if (RBtn矩形.Checked)
{
if(_sectionBundleInfo.GaMa_Left.All(x => x == 0))
{
for (var sect_index = 1; sect_index <= 8; sect_index++)
{
var controlnameGama1 = $"skyTextBox断面y1{sect_index}";
SkyTextBox controly1 = this.Controls.Find(controlnameGama1, true).FirstOrDefault() as SkyTextBox;
controly1.Enabled = false;
}
return;
}
//for (var sect_index = 1; sect_index <= 8; sect_index++)
//{
// var controlnameGama1 = $"skyTextBox断面y1{sect_index}";
// SkyTextBox controly1 = this.Controls.Find(controlnameGama1, true).FirstOrDefault() as SkyTextBox;
// controly1.Text = "0";
// controly1.Enabled = false;
//}
ViewModel.SectionBundleInfo Rec_sectionBundleInfo = _sectionBundleInfo.Copy();
Rec_sectionBundleInfo.ShapeType = eSectionShapeType.矩形;
Rec_sectionBundleInfo.ResetAllParas(_hdrBaseInfo, _geomBaseInfo);
for (var sect_index = 1; sect_index <= 8; sect_index++)
{
var controlnameGama1 = $"skyTextBox断面y1{sect_index}";
var controlnameRia1 = $"skyTextBox断面r1{sect_index}";
var controlname断面面积 = $"skyTextBox断面面积{sect_index}";
var controlnameHeight = $"skyTextBox断面H1{sect_index}";
SkyTextBox controly1 = this.Controls.Find(controlnameGama1, true).FirstOrDefault() as SkyTextBox;
SkyTextBox controly2 = this.Controls.Find(controlnameRia1, true).FirstOrDefault() as SkyTextBox;
SkyTextBox control断面面积 = this.Controls.Find(controlname断面面积, true).FirstOrDefault() as SkyTextBox;
SkyTextBox controH1 = this.Controls.Find(controlnameHeight, true).FirstOrDefault() as SkyTextBox;
controly1.Enabled = false;
if (controly1 != null)
controly1.Text = Rec_sectionBundleInfo.GaMa_Left[sect_index].ToString();
if (controly2 != null)
controly2.Text = Rec_sectionBundleInfo.R_Left[sect_index].ToString();
if (control断面面积 != null)
control断面面积.Text = Rec_sectionBundleInfo.Area[sect_index].ToString();
if (controH1 != null)
controH1.Text = Rec_sectionBundleInfo.H[sect_index].ToString();
}
RefreshShape(Rec_sectionBundleInfo);
}
}
}
}