Аналогия WPF для 'них' единица

Замените ваш код этим, он будет работать, вы используете * оператор, где вы должны использовать оператор +, я прокомментировал эти строки в вашем коде и заменил его для лучшего понимания. Счастливое кодирование

namespace WindowsFormsApp8
{
    public partial class Form1 : Form
    {
        private void Lb1SumF_Click(object sender, EventArgs e)
        {
        }

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            TX1.TabIndex=0;
        }

        private void label4_Click(object sender, EventArgs e)
        {
        }

        private void TX1_TextChanged(object sender, EventArgs e)
        {
            try
            {
                int sumF; 
                //sumF = Convert.ToInt32(Lb1PriceF.Text) * Convert.ToInt32(TX1.Text); // You were doing wrong here , you were multiplying these values
                sumF = Convert.ToInt32(Lb1PriceF.Text) + Convert.ToInt32(TX1.Text);
                Lb1SumF.Text = Convert.ToString(sumF); //Label1 sum
            }
            catch
            {
                Lb1SumF.Text = "0";
            }
        }

        private void TX2_TextChanged(object sender, EventArgs e)
        {
            try
            {
                int sumF;
                //sumF = Convert.ToInt32(Lb2PriceF.Text) * Convert.ToInt32(TX2.Text); //you are doing it wrong here , you are multiplying
                sumF = Convert.ToInt32(Lb2PriceF.Text) + Convert.ToInt32(TX2.Text);
                Lb2SumF.Text = Convert.ToString(sumF); //Label2 sum
            }
            catch
            {
                Lb2SumF.Text = "0";
            }
        }

        private void Lb3_TextChanged(object sender, EventArgs e)
        {
               int i = Convert.ToInt32(Lb1SumF.Text);
               int j = Convert.ToInt32(Lb2SumF.Text);
               Lb3.Text = Convert.ToString(i+j); // Label3 sum 
        }

        private void Lb3SumF_Click(object sender, EventArgs e)
        {
        }
   }
}
8
задан alex2k8 17 March 2009 в 11:56
поделиться

4 ответа

AFAIK, прямо сейчас нет того. Но можно сделать требование известным здесь.

Одна альтернатива (и я не знаю, возможно ли это любой), должен был бы иметь размеры, насколько большой желаемый шрифт, затем возьмите это в качестве своей единицы "Эмса", затем масштабируйте использование тех "единиц" вместо этого.

2
ответ дан 5 December 2019 в 07:37
поделиться

их измеряют, ширина прописной буквы M в текущем шрифте, в Wpf нет никакого зависимого от шрифта метода калибровки

Btw, WPF использует "независимые от устройств пиксели", которые всегда являются 1/96 дюйма (потому что это составляет один пиксель на сегодняшних мониторах), так:

  • 1 пиксель составляет 1/96 дюйма
  • 96 пикселей в дюйме
  • 1,33333 пикселя являются точкой
  • 3,779 пикселей являются мм

Это чрезвычайно неточно на мониторах, потому что почти все мониторы сообщают о разрешении на 96 точек на дюйм и игнорируют реальный размер пикселя, но очень полезны при печати.

6
ответ дан 5 December 2019 в 07:37
поделиться
<ScaleTransform ScaleX="1.2" ScaleY="1.2"></ScaleTransform> 

кажется, более или менее 1.2em альтернатива.

3
ответ дан 5 December 2019 в 07:37
поделиться

К сожалению, нет никакого эквивалента в WPF их единицы. Все Ваши размеры шрифта, и т.д. всегда устанавливаются в Пикселях.

1
ответ дан 5 December 2019 в 07:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: