Есть ли способ добавить RichTextBox в проект C # Xamarin для Android? - PullRequest
0 голосов
/ 09 мая 2018

У меня проблема с переводом проекта C #, созданного для Windows, в Android Xamarin. Я искал в Интернете, чтобы найти какое-либо решение о RichTextBox и других функциях и компонентах, которые я использовал для создания программы для версии Windows, но я не смог найти никакого хорошего решения, кроме одной темы здесь , но это не помогло мне. Если нет способа добавить что-то вроде richtextbox, есть ли другое текстовое поле, которое поддерживает .Lines, чтобы я мог получить правильный номер строки?

Вот часть моего кода:

        private void ThreadTask1()
    {
        string link = "http://example.com/music-today.php";
        int TimeToWait = 300;
        int check_ID = 0;

        string ParsedResult = null;

        HtmlAgilityPack.HtmlDocument doc = null;
        HtmlWeb web1 = new HtmlWeb();

        while (true) {

            ParsedResult = "";
            RichTextBox1.Clear(); 
            RichTextBox2.Clear(); 

            web1.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64)";
            web1.UsingCache = false;
            web1.UseCookies = true;

            doc = web1.Load(link);

            HtmlNode div = doc.DocumentNode.SelectSingleNode("//div[@class='latest-song14']"); 

            if ((div != null)) {
                ParsedResult = div.InnerText.Trim();
                RichTextBox1.Text = ParsedResult;
                RichTextBox2.Text = RichTextBox1.Lines[0];

                if (!RichTextBox2.Text.Contains("dj")) {
                    Sound vol = new Sound("nircmdc.exe");
                    vol.setVol(40);

                    while (true) {
                        MyMusicInformer.My.MyProject.Computer.Audio.Play("C:\\Windows\\media\\Alarm01.wav", AudioPlayMode.Background);
                        System.Threading.Thread.Sleep(700);
                        MyMusicInformer.My.MyProject.Computer.Audio.Play("C:\\Windows\\media\\Alarm01.wav", AudioPlayMode.Background);
                        System.Threading.Thread.Sleep(700);
                        MyMusicInformer.My.MyProject.Computer.Audio.Play("C:\\Windows\\media\\Alarm01.wav", AudioPlayMode.Background);
                        System.Threading.Thread.Sleep(5000);
                    }
                } else {
                    check_ID = check_ID + 1;
                    RichTextBox2.Text = "No new song yet. Try (" + check_ID.ToString() + ")";
                }
            }
            System.Threading.Thread.Sleep(TimeToWait * 1000);
        }
    }


    private Thread trd1;

    private void Form1_Load(object sender, EventArgs e)
    {
        System.Windows.Forms.Control.CheckForIllegalCrossThreadCalls = false;

        trd1 = new Thread(ThreadTask1);
        trd1.IsBackground = true;
        trd1.Start();
    }

Я хочу получать информацию только при обновлении новой песни. В Visual Studio я вижу только параметр «Многострочный текст», но он не может решить мою проблему.

Спасибо за ваше время.

1 Ответ

0 голосов
/ 11 мая 2018

Вы пробовали Xamarin.Forms.Editor контроль? Я уверен, что это может помочь вам.

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