У меня есть небольшой опыт использования частных классов с использованием книги Мураха C#, но я по-прежнему очень новичок. Я пытаюсь создать свой собственный проект, который состоит из «Идентификатор пациента» «Имя» «Вес», а затем уравнение для рекомендуемого ежедневного потребления белка (вес * .86). В конечном итоге это будет сделано в базовую базу данных, однако сейчас я изо всех сил пытаюсь показать результаты. Кроме того, расчет для ежедневного потребления белка не будет работать в классе, который я сделал.Передача частного класса в форму
Вот мой код класса:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Form1
{
public class Intake
{
private string name;
private int patientId;
private int weight;
//private int proteinIntake = weight * .86;
//Constuctor
public Intake() { }
//Overload Constructor
public Intake(string name, int patientId, int weight)
{
this.Name = name;
this.PatientId = patientId;
this.Weight = weight;
}
public string Name
{
get
{
return name;
}
set
{
name = value;
}
}
public int PatientId
{
get
{
return patientId;
}
set
{
patientId = value;
}
}
public int Weight
{
get
{
return weight;
}
set
{
weight = value;
}
}
public string GetDisplayText(string sep) =>
name + patientId + sep + weight;
}
}
Вот мой код формы:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Form1
{
public partial class Form1 : Form
{
public static Intake intake = null;
public Form1()
{
InitializeComponent();
}
private void btnExit_Click(object sender, EventArgs e)
{
this.Close();
}
private void btnCalculate_Click(object sender, EventArgs e)
{
Intake intake = new Intake(txtName.Text, Convert.ToInt32(txtPatientId.Text), Convert.ToInt32(txtWeight.Text));
//obviously does not work MessageBox.Show("Name: " + intake.name);
}
}
}
И, если это важно, вот моя уродливая форма
Doing 'MessageBox.Show ("Имя:" + intake.name);' не будет работать, но делать 'MessageBox.Show ("Имя:" + intake.Name), 'должен работать нормально. – Enigmativity