Преобразуйте System.Web.UI.WebControls.Unit в int в c # - PullRequest
3 голосов
/ 18 мая 2010

Как мне преобразовать структуру ASP.NET Unit в int в c #?Или наоборот?

Ответы [ 7 ]

11 голосов
/ 18 мая 2010

Тип объекта имеет Значение свойства . Это двойное число, но вы можете привести его к int, если хотите. Приведение может привести к потере точности, но вы, вероятно, знаете об этом.

Чтобы создать юнит, просто используйте конструктор , который принимает int .

3 голосов
/ 18 мая 2010

Если вы имеете в виду Единица класс:

Класс Unit может представлять значения только между -32768 и 32767.

Но это зависит от того, хотите ли вы указать значение в пикселях или процентах.

  • myUnit.Value получит значение, как указано.
  • Используйте конструктор public Unit(int value) для конвертации обратно.

Если вы имеете в виду uint : есть два возможных очевидных способа:

int n = Convert.ToInt32(myUint);
int n = (int)myUint;

1 голос
/ 18 мая 2010

Для блока ASP.NET:

unit.IsEmpty ? 0 : Convert.ToInt32(unit.Value);
1 голос
/ 18 мая 2010

Использовать свойство Unit.Value. Он вернется в два раза, и вы можете привести его к int

Что-то вроде (int)xyz.Value

где xyz - это единичная переменная

Для преобразования int в единицу используйте new Unit(value)

0 голосов
/ 18 мая 2010

Свойство Value возвращает dobule, который можно преобразовать в целое число:

int h = (int)someControl.Height.Value;

Однако преобразование может не иметь смысла для некоторых типов юнитов. Если вы точно не знаете, что устройство относится к определенному типу, вам следует сначала проверить свойство Type.

0 голосов
/ 18 мая 2010

Наверное, ему нужно это:

 int myInt = 1;
 uint myUint = (uint)myInt;

 uint myUint = 1;
 int myInt = (int)myUint;
0 голосов
/ 18 мая 2010
Convert.Toint32( UInt );

Полагаю, вы имели в виду, не Юнит

РЕДАКТИРОВАТЬ: Хорошо думал, что вы имели в виду uint извините

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...