2012-01-09 38 views
6

Tôi đã khởi động vào Bản xem trước dành cho nhà phát triển Windows hôm nay, hy vọng sẽ nhận được một số mã ra và vào một ứng dụng Metro hoạt động. Tôi rất vui vì sự ra mắt của Windows Store, và tôi muốn trở thành một phần của nó. Vì vậy, tôi kích hoạt VS11 Express và bắt đầu viết mã. Tôi thậm chí còn không được ra khỏi một dòng khi:Tại sao các điều khiển XAML của tôi không hiển thị trong mã sau?

"Cái tên 'Xem' không tồn tại trong bối cảnh hiện nay"

Vì vậy, tôi quay trở lại trang XAML của tôi. Tôi đào xung quanh, và lo and behold, nút của tôi tên Xem vẫn còn đó, với đoạn mã sau:

<Button Name="View" Content="View the help page" HorizontalAlignment="Left" Height="142" Margin="765,275,0,0" VerticalAlignment="Top" Width="456" FontSize="48" Foreground="Black" Background="Orange" BorderBrush="Black"/>

tôi thấy không có gì sai với XAML đó. Tuy nhiên, kinh nghiệm duy nhất của tôi với C# là thông qua Windows Phone 7. Vì vậy, tôi làm một chút nghiên cứu. Và tôi thấy không có gì sai với mã của tôi.

Lỗi nào ở đây? Điều này làm việc với máy tính để bàn Windows và WP7!

Làm cách nào để ngăn điều này xảy ra và tại sao nó lại xảy ra?

EDIT

Tôi vừa trở về dự án của mình và nhận ra rằng tôi đã quên lưu. Sau đó tôi nhấn Ctrl-Shift-S truyền thống để lưu mọi thứ. Tôi đã quay trở lại tab của MainPage.xaml.cs và lo and behold, nó hoạt động! Không có lỗi! Tại sao điều này xảy ra?

+0

tôi đã cùng một vấn đề trong VS2012 - ctrl-shift-s cố định nó! Kỳ lạ. – wmute

Trả lời

9

Hãy thử sử dụng x:Name thay vì vanilla Name. Việc sử dụng Name tạo ra tiềm năng cho xung đột trong khi x:Name đảm bảo nó sẽ đặt tên mã định danh giá trị được chỉ định

Có giải thích chi tiết hơn về MSDN. Hãy xem phần "Các yếu tố được đặt tên" phần

+0

Xem ở trên: nó chỉ đơn giản là làm việc sau khi lưu đơn giản. Ngoài ra, ban đầu tôi có x: Tên trong đó và điều đó không thay đổi. Chuyển nó xung quanh đã không làm các trick; nó bật ra rằng tiết kiệm "cố định" lỗi. BTW, x: Tên sẽ luôn là lựa chọn đầu tiên của tôi. Câu trả lời hay, nhưng trong trường hợp này tôi đã thử nó và nó không hoạt động. Tôi nghĩ rằng đó là một lỗi trong Visual Studio 11. – JavaAndCSharp

Các vấn đề liên quan