Announcement

Collapse
No announcement yet.

Lỗi phải đặt breakpoint mới thực hiện hàm.

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • [C#] Lỗi phải đặt breakpoint mới thực hiện hàm.

    Code xaml như sau:
    PHP Code:
                <MediaElement x:Name="MainAudioPlayer" Source="File.mp3" Height="0" Width="0" Loaded="MainAudioPlayer_Loaded"/> 
    Code của cs như sau:
    PHP Code:
    public void MainAudioPlayer_Loaded(object senderRoutedEventArgs e)
            {
                
    Timer t = new Timer();
                
    t.Interval 1000;
                
    t.Enabled true;
                
    t.Elapsed += t_Elapsed;
                
    t.Start();
                
    SearchBox.Text "DONE";//Chỉ để kiểm tra xem có thực hiện hàm hay không
            

    Thật ra thì chương trình không xảy ra lỗi gì cả, nhưng lạ một điều, chắc cũng gọi là lỗi. Không biết là lỗi của chương trình hay lỗi của Visual nữa.
    Nếu đặt breakpoint ở lệnh bất kì trong hàm MainAudioPlayer_Loaded thì giá trị của Text trong SearchBox là DONE.
    Còn nếu không đặt breakpoint thì khi debug giá trị của Text trong SearchBox vẫn giữ nguyên.

    => Tại sao lại phải đặt breakpoint thì hàm mới thực hiện khi debug ??? là lỗi của chương trình hay lỗi visual ???


  • #2
    có vẻ lúc chạy thì SearchBox load sau khi MainAudioPlayer loaded.
    em tham gia clb ITIC của tụi a để được hướng dẫn sâu hơn nha: https://www.facebook.com/groups/ITIClub/
    Chúc vui vẻ!

    Comment


    • #3
      Một chân lý không bao giờ thay đổi đó là Visual Studio, hay cụ thể hơn là các IDE không bao giờ gây ra lỗi runtime. Mọi người khi lập trình nên ghi nhớ chân lý này để tìm đúng hướng đi khi gặp bug. Vậy nên chỉ còn 1 trường hợp là do code không hợp lý ở chỗ nào đó (còn chỗ nào thì nhìn vào chừng đấy code anh chịu, ko tìm ra được :byebye

      Comment


      • #4
        Originally posted by 11520132 View Post
        Code xaml như sau:
        PHP Code:
                    <MediaElement x:Name="MainAudioPlayer" Source="File.mp3" Height="0" Width="0" Loaded="MainAudioPlayer_Loaded"/> 
        Code của cs như sau:
        PHP Code:
        public void MainAudioPlayer_Loaded(object senderRoutedEventArgs e)
                {
                    
        Timer t = new Timer();
                    
        t.Interval 1000;
                    
        t.Enabled true;
                    
        t.Elapsed += t_Elapsed;
                    
        t.Start();
                    
        SearchBox.Text "DONE";//Chỉ để kiểm tra xem có thực hiện hàm hay không
                

        Thật ra thì chương trình không xảy ra lỗi gì cả, nhưng lạ một điều, chắc cũng gọi là lỗi. Không biết là lỗi của chương trình hay lỗi của Visual nữa.
        Nếu đặt breakpoint ở lệnh bất kì trong hàm MainAudioPlayer_Loaded thì giá trị của Text trong SearchBox là DONE.
        Còn nếu không đặt breakpoint thì khi debug giá trị của Text trong SearchBox vẫn giữ nguyên.

        => Tại sao lại phải đặt breakpoint thì hàm mới thực hiện khi debug ??? là lỗi của chương trình hay lỗi visual ???
        Có thể từ lúc sau khi thực hiện hàm này tới lúc dòng bôi đỏ bạn đã vô tình thay đổi giá trị nó rồi. Bạn đặt breakpoint trong hàm rồi f10 để biết thêm

        Comment

        LHQC

        Collapse
        Working...
        X