Saya mencoba untuk kembali ke program utama tetapi harus berubah pada perubahan ComboBox. Tidak peduli apa itu mengembalikan apa pun yang diatur String di bagian atas kelas. Jika saya mengubah the result = ""; ke result = "Test"; itu akan menampilkan Test di TextBox yang saya coba perbarui. Tapi itu tidak akan mendapatkan apa-apa dari pernyataan IF.

Terima kasih untuk bantuannya!

PROGRAM UTAMA

namespace VTCPT
{
    /// <summary>
    /// 
    /// </summary>
    public sealed partial class MainPage : Page
    {
        public MainPage()
        {
            this.InitializeComponent();


        }

        private void ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
              //UPDATE THE SHORTCODE TEXTBLOCK
            updateVTCShortCode display = new updateVTCShortCode();
            display.mergeShortCode(longFormCodec.SelectedItem.ToString());
            if (String.IsNullOrEmpty(display.finalResult()))
                { shortFormCodec.Text = ".."; }
            else { shortFormCodec.Text = display.finalResult(); }
            }

        private void updateShortForm(object sender, SelectionChangedEventArgs e)
        {

        }


        private void TextBlock_SelectionChanged(object sender, RoutedEventArgs e)
        {


        }

        private void fsSiteBuild_SelectionChanged(object sender, RoutedEventArgs e)
        {
        }


        private void updateSiteBuild(object sender, TextChangedEventArgs e)
        {
            int index = fsRoomDesig.Text.IndexOf(".");

            if (index > 0)
            { fsSiteBuild.Text = fsRoomDesig.Text.Substring(0, index); }
            else { fsSiteBuild.Text = ".."; }
        }

        private void vtcSystemName_SelectionChanged(object sender, RoutedEventArgs e)
        {

        }     
    }
}

PerbaruiVTCShortCode CLASS

namespace VTCPT
{
    class updateVTCShortCode
    {
        String result = "";  //////ALWAYS RESULTS ONLY IN WHAT IS HERE
        public void mergeShortCode(String longFormCodec)
         {

            if (longFormCodec == "Cisco SX80")
            {
                String sendShortForm = "SX80";
                result = "V-T" + sendShortForm;

            }
            if (longFormCodec == "Cisco Webex Codec Plus")
            {
                String sendShortForm = "SRK";
                result = "V-T" + sendShortForm;
            }
            if (longFormCodec == "Cisco Webex Codec Pro")
            {
                String sendShortForm = "SRK";
                result = "V-T" + sendShortForm;
            }
    }
        public String finalResult()
        { return result; }
    }
}
1
Shawn 18 Juni 2020, 05:16

1 menjawab

Jawaban Terbaik

Anda tidak melakukan perbandingan string dengan benar. Anda perlu menggunakan .equals() untuk string.

Anda perlu mengganti semua perbandingan string tempat Anda menggunakan == ke .equals() dan itu akan berfungsi:

namespace VTCPT
{
    class updateVTCShortCode
    {
        String result = "";  //////ALWAYS RESULTS ONLY IN WHAT IS HERE
        public void mergeShortCode(String longFormCodec)
         {

            if (longFormCodec.equals("Cisco SX80"))
            {
                String sendShortForm = "SX80";
                result = "V-T" + sendShortForm;

            }
            if (longFormCodec.equals("Cisco Webex Codec Plus"))
            {
                String sendShortForm = "SRK";
                result = "V-T" + sendShortForm;
            }
            if (longFormCodec.equals("Cisco Webex Codec Pro"))
            {
                String sendShortForm = "SRK";
                result = "V-T" + sendShortForm;
            }
    }
        public String finalResult()
        { return result; }
    }
}
0
bhristov 18 Juni 2020, 02:19