Articles of lecture seule

Comment modifier la valeur d’un champ statique en lecture seule à l’aide de la reflection en c #?

La méthode SetFields dans la classe fieldInfo accepte les objects en tant que premier paramètre. Existe-t-il un moyen de changer la valeur des champs statiques en lecture seule à l’aide de la reflection en C #? Jusqu’ici j’ai var field = typeof(ClassName).GetField(“FieldName”,BindingFlags.Instance|BindingFlags.NonPublic);

Définition des champs en lecture seule (s’agit-il d’un bogue?)

Tout en jouant avec c #, réalisé une chose étrange. Voici le code: class Program { static void Main(ssortingng[] args) { System.Diagnostics.Debug.Write(ssortingng.Empty); typeof(ssortingng) .GetField(“Empty”, BindingFlags.Static | BindingFlags.Public) .SetValue(null, “Tolgahan”); Console.WriteLine(ssortingng.Empty); // output : Tolgahan } } Pourquoi la reflection nous a-t-elle permis de modifier les champs en lecture seule? La question est “pourquoi le réglage […]

Const exactitude en C # avec des types riches

Venant d’un contexte C ++ et essayant d’apprendre le C #, l’une des omissions de langage les plus frustrantes que j’ai rencontrées est l’équivalent du mot clé const . Donc, j’ai essayé de régler sur un modèle que je peux utiliser pour obtenir la correction correcte en C #. Cette réponse a une suggestion intéressante: […]

Y a-t-il des frais généraux d’exécution en lecture seule?

Pour une raison quelconque, j’ai toujours supposé que les champs en readonly étaient associés à une surcharge, ce que je pensais être le CLR qui surveillait si un champ en readonly avait été initialisé ou non. La surcharge ici consisterait en une utilisation de mémoire supplémentaire permettant de suivre l’état et un contrôle lors de […]

Modification par programme du mode Lecture seule sur les lignes DataGridView

Sans expliquer le contexte dans son ensemble, mon problème est essentiellement le suivant: J’ai un datagridview sur un Windows Form qui est lié à un DbSet Entity Framework: dbSet.Local.ToBindingList() . Si je définis la propriété ReadOnly de datagridview sur true (en mode Création), puis que j’ai cette déclaration dans mon code: myDataGridView.Rows[rowIndex].ReadOnly = false; Il […]

Pourquoi les modificateurs readonly et volatile sont-ils mutuellement exclusifs?

J’ai une variable de type référence qui est en readonly , car la référence ne change jamais, seulement ses propriétés. Quand j’ai essayé d’y append le modificateur volatile le compilé m’a averti qu’il ne laisserait pas les deux modificateurs s’appliquer à la même variable. Mais je pense en avoir besoin pour être volatile car je […]

Accesseur de propriété «en lecture seule» en C #

J’ai la classe suivante: class SampleClass { private ArrayList mMyList; SampleClass() { // Initialize mMyList } public ArrayList MyList { get { return mMyList;} } } Je veux que les utilisateurs soient capables d’obtenir mMyList, c’est pourquoi j’expose le “get” via une propriété, mais je ne veux pas que les modifications qu’ils apportent soient apscopes […]

Comment redéfinir une propriété en lecture seule avec un séparateur en C #

Mise à jour : Cette question a été révisée pour la rendre plus claire. Les réponses ci-dessous semblent indiquer que cette méthode fonctionne bien. Espérons que cette question puisse aider les personnes ayant besoin d’append un get ou un set à une propriété existante. Je suis tombé sur un problème aujourd’hui où je devais redéfinir […]

Modifier une variable membre privée en lecture seule?

J’ai le code suivant : public class MyClass { private readonly ssortingng name; public ssortingng Name { get { return name; } } public MyClass(ssortingng name) { this.name = name; } } class Program { static void Main(ssortingng[] args) { MyClass mc = new MyClass(“SomeName”); } } Est-il possible de modifier la valeur de mc.name […]

Comment accéder à une valeur Boundfield sélectionnée à partir d’un GridView dans code-behind

J’ai vu des questions similaires mais aucune des réponses ne m’a aidé à résoudre ce problème. J’ai GridView avec un champ ReadOnly comme suit. GridView: comme vous pouvez le voir, le prID BoundField a Readonly=True atsortingbut. J’essaie d’obtenir la valeur du prID dans code-behind lorsque l’utilisateur met à jour les autres champs de la ligne. […]