2010-05-27 6 views
0

Comment remplacer la valeur de la cellule par sa description. Ceci est ma grilleRemplacer la valeur de la colonne par la description

<telerik:RadGrid ID="RadGrid1" runat="server" DataSourceID="SqlDataSource1" GridLines="None"> 
    <HeaderContextMenu EnableAutoScroll="True"> 
    </HeaderContextMenu> 
    <MasterTableView AutoGenerateColumns="False" DataKeyNames="OrderID" DataSourceID="SqlDataSource1"> 
     <RowIndicatorColumn> 
      <HeaderStyle Width="20px"></HeaderStyle> 
     </RowIndicatorColumn> 
     <ExpandCollapseColumn> 
      <HeaderStyle Width="20px"></HeaderStyle> 
     </ExpandCollapseColumn> 
     <Columns> 
      <telerik:GridBoundColumn DataField="OrderID" DataType="System.Int32" HeaderText="OrderID" 
       ReadOnly="True" SortExpression="OrderID" UniqueName="OrderID"> 
      </telerik:GridBoundColumn> 
      <telerik:GridBoundColumn DataField="CustomerID" HeaderText="CustomerID" SortExpression="CustomerID" 
       UniqueName="CustomerID"> 
      </telerik:GridBoundColumn> 
      <telerik:GridBoundColumn DataField="OrderDate" DataType="System.DateTime" HeaderText="OrderDate" 
       SortExpression="OrderDate" UniqueName="OrderDate"> 
      </telerik:GridBoundColumn> 
      <telerik:GridBoundColumn DataField="RequiredDate" DataType="System.DateTime" HeaderText="RequiredDate" 
       SortExpression="RequiredDate" UniqueName="RequiredDate"> 
      </telerik:GridBoundColumn> 
      <telerik:GridBoundColumn DataField="ShipName" HeaderText="ShipName" SortExpression="ShipName" 
       UniqueName="ShipName"> 
      </telerik:GridBoundColumn> 
      <telerik:GridBoundColumn DataField="ShipAddress" HeaderText="ShipAddress" SortExpression="ShipAddress" 
       UniqueName="ShipAddress"> 
      </telerik:GridBoundColumn> 
      <telerik:GridBoundColumn DataField="ShipCity" HeaderText="ShipCity" SortExpression="ShipCity" 
       UniqueName="ShipCity"> 
      </telerik:GridBoundColumn> 
      <telerik:GridBoundColumn DataField="ShipRegion" HeaderText="ShipRegion" SortExpression="ShipRegion" 
       UniqueName="ShipRegion"> 
      </telerik:GridBoundColumn> 
      <telerik:GridBoundColumn DataField="ShipPostalCode" HeaderText="ShipPostalCode" SortExpression="ShipPostalCode" 
       UniqueName="ShipPostalCode"> 
      </telerik:GridBoundColumn> 
      <telerik:GridBoundColumn DataField="ShipCountry" HeaderText="ShipCountry" SortExpression="ShipCountry" 
       UniqueName="ShipCountry"> 
      </telerik:GridBoundColumn> 
     </Columns> 
    </MasterTableView> 
    </telerik:RadGrid> 

Cette grille chargera table Commandes. Comment remplacer CustomerID par CompanyName qui provient de la table Customers pendant l'exécution?

Répondre

0

Liez la grille à un objet DataView qui inclut le champ CompanyName de la table Customers.

+0

Comment faire? pouvez-vous me montrer un lien? Déjà essayé mais n'a pas trouvé – shoden

+0

Il y a beaucoup d'exemples sur la façon de faire une vue de données. Pointez la source de données vers la vue de données. Étant donné que vous extrayez un champ d'une table différente, vous devez effectuer une requête sql de jointure interne pour extraire ce champ également. – N0Alias

0

Vous pouvez utiliser une LinqDataSource avec un modèle Linq-to-SQL. Si Orders possède un champ de clé étrangère qui référence la table Customers, l'association correspondante sera automatiquement créée pour vous par le concepteur Linq-to-SQL lorsque vous faites glisser les tables dans le concepteur. Si la relation FK n'existe pas dans la base de données, vous pouvez très simplement la modéliser dans Linq-to-SQL. Une fois l'association définie, la classe Orders acquiert une nouvelle propriété, probablement appelée Customer, qui exposera un objet Customer. Vous pouvez alors y accéder de manière déclarative ou par programmation en utilisant simplement la notation par points, comme ceci: DataField = "Customer.Name"

Questions connexes