0
Imports App1.LoadHandler
Public NotInheritable Class MainPage
Inherits Page
Public Shared mp As New MainPage

    Private Sub MainPage_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded
        lh.Load()
    End Sub
End Class


Imports App1.MainPage
Public Class LoadHandler
Public Shared lh As New LoadHandler

    Public Sub Load()
        AddImageObjectstoList()
    End Sub

    Private Sub AddImageObjectstoList()
        dh.imgdice.Add(imgDice1)
        dh.imgdice.Add(imgDice2)
        dh.imgdice.Add(imgDice3)
        dh.imgdice.Add(imgDice4)
        dh.imgdice.Add(imgDice5)
    End Sub
End Class

我收到消息说“'App1.MainPage.Private WithEvents imgDice1 As Windows.UI.Xaml.Controls.Image' 在此上下文中无法访问,因为它是 'Private'。” 当悬停在 dh.imgdice.Add(imgDice1) 上时。

在“AddImageObjectstoList()”中,我无法访问 imgDice1 - imgDice5,因为它是私有的。在 MainPage.xaml.vb 之外访问 Windows.UI.Xaml.Controls.Image 控件的最佳方式是什么?

4

1 回答 1

1

imgDice1这个问题有点含糊,但我猜你已经imgDice5MainPage.xaml. 默认情况下,这些是私有字段。要使它们公开,您需要使用x:FieldModifier="public"

<Image x:Name="imgDice1" x:FieldModifier="public" />
<Image x:Name="imgDice2" x:FieldModifier="public" />
<Image x:Name="imgDice3" x:FieldModifier="public" />
<Image x:Name="imgDice4" x:FieldModifier="public" />
<Image x:Name="imgDice5" x:FieldModifier="public" />

这样,您也可以从其他类访问它们,而不仅仅是在MainPage.

于 2013-01-11T19:30:30.820 回答