Masquer BoundField mais encore être en mesure d'obtenir des valeurs avec C#

J'ai un affichage de la grille et je suis en utilisant une variété de données:

<asp:BoundField DataField="Catagory" HeaderText="Support Catagory" SortExpression="Catagory" />
<asp:BoundField DataField="AppName" HeaderText="Application Name" SortExpression="IncidentNumber" />
<asp:BoundField DataField="IncidentNumber" HeaderText="Incident #" SortExpression="IncidentNumber" />
<asp:BoundField DataField="Hours" HeaderText="Hours" SortExpression="Hours" />
<asp:BoundField DataField="Description" HeaderText="Description" SortExpression="Description" />
<asp:BoundField DataField="CreatedDate" HeaderText="Created Date" SortExpression="CreatedDate" />
<asp:BoundField DataField="PK_DailyTaskHours" HeaderText="" SortExpression="PK_DailyTaskHours" ReadOnly="true" />
<asp:BoundField DataField="PK_NonScrumStory" HeaderText="" SortExpression="PK_NonScrumStory" ReadOnly="true" />

Les deux dernières colonnes cependant je ne veux pas le montrer, je suis à l'aide afin que je puisse récupérer les clés primaires avec ce code C#:

    string dailyTaskHoursPK = (string)e.Values["PK_DailyTaskHours"].ToString();
    string nonScrumStoryPK = (string)e.Values["PK_NonScrumStory"].ToString();
    SqlDataSource4.DeleteParameters["dailyTaskHoursPK"].DefaultValue = dailyTaskHoursPK;
    SqlDataSource4.DeleteParameters["nonScrumStoryPK"].DefaultValue = nonScrumStoryPK;

Cependant, je ne veux pas afficher les deux dernières colonnes. Mais quand j'ai mis:

Visible="false"

Et essayez d'exécuter le programme, j'obtiens l'erreur suivante:

Objet de référence non définie à une instance d'un objet.

Description: Une exception non gérée s'est produite pendant l'exécution de la demande web actuelle. Veuillez consulter la trace de la pile pour plus d'informations sur l'erreur et où elle a son origine dans le code.

Détails De L'Exception: System.NullReferenceException: la référence d'Objet n'est pas définie à une instance d'un objet.

Ce que je fais mal? Comment puis-je empêcher l'utilisateur de voir ces champs?

OriginalL'auteur David Tunnell | 2013-07-01