Why is the control inaccessible due to its protection level?

前端 未结 4 1341
时光说笑
时光说笑 2020-12-11 00:50

I\'m trying to access a control\'s text property from program.cs and it says that it is inaccessible due to protected level. How can I fix this please?

相关标签:
4条回答
  • 2020-12-11 01:08

    Control Protection level Resolved

    Go to designer file search control By ID e.g txtModel change protected modifier to public modifier

    0 讨论(0)
  • 2020-12-11 01:12

    Use x:FieldModifier="public" e.g.

    <TextBlock x:FieldModifier="public" x:Name="AccessibleTextBlock" />
    

    as explained here: Modifying XAML named field visibility

    In my case, I put UserControl in another DLL. WPF’s convention is to set all named fields as internal by default. Using the x:FieldModifier="public" has solved the issue.

    0 讨论(0)
  • 2020-12-11 01:14

    This is the default property for controls and can be solved by:

    1. Going into Design-View for the Form that contains the specified Control
    2. Then changing the Control's Modifiers property to Public or Internal.

    0 讨论(0)
  • 2020-12-11 01:24

    The concept behind is the protection level. As we have studied in Object Oriented Paradigm keep your class members variables private and set or get it from Property.Thats why it is not a good approach

    0 讨论(0)
提交回复
热议问题