Как получить позиции 'x, y' из класса 'Point (x, y)', хранящиеся в массиве? - PullRequest
0 голосов
/ 06 января 2019

Я храню 2 разные переменные в массиве, и теперь я хочу разделить их по типу, но проблема в том, что я не знаю, как получить позиции классов Point от массива.

Я пробовал несколько вещей, которые вызывали у меня ошибку, и я не нашел ничего о преобразовании объекта в класс Point, поэтому здесь у вас есть пример кода, надеюсь, вы мне поможете!

List<string> Strings = new List<string>() { "Test1", "Test2", "Test3" };
ArrayList Data = new ArrayList();
private void button1_Click(object sender, EventArgs e)
{
    foreach(string s in Strings)
    {
        if (s == "Test1")
        {
            Data.Add("T1");
            Data.Add(new Point(1,1));
        }
        else if (s == "Test2")
        {
            Data.Add("T2");
            Data.Add(new Point(2,2));
        }
        else if (s == "Test3")
        {
            Data.Add("T3");
            Data.Add(new Point(3,3));
        }
    }
    foreach(object d in Data)
    {
        string result = "";
        int x = 0;
        int y = 0;
        if (d is string)
        {
            result = d.ToString();
        }
        else if (d is Point)
        {
            //Get the point positions
        }
    }
}

1 Ответ

0 голосов
/ 06 января 2019

Если вам нужно сохранить значения в Point в строке Результат переменной,

 else if (d is Point point)
 {
     result = $"x= {point.X},y= {point.Y}";
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...