Einzelnen Beitrag anzeigen

hirnstroem

Registriert seit: 21. Sep 2005
297 Beiträge
 
Delphi 2006 Professional
 
#1

IntraWeb TreeView Items ausblenden

  Alt 29. Sep 2006, 10:50
'loha Folks,

IWTreeView ist Krieg!

Ich möchte einzelne Root Items gezielt ausblenden, um verschiedenen Usern mit verschiedenen Rechten verschiedene Items anzuzeigen. Bisher habe ich dies so gelöst:

Delphi-Quellcode:
procedure TIWUserSession.SetRights(Sender: TIWTreeView);
var
  RightManagementToolRight,
  OperationToolRight,
  ConfigurationToolRight: Boolean;
begin
  SearchLoginUser(Sender, FUsername, '', '');
  ConfigurationToolRight := ADODataSet_LoginUserConfigurationTool.Value;
  OperationToolRight := ADODataSet_LoginUserOperationTool.Value;
  RightManagementToolRight := ADODataSet_LoginUserRightManagementTool.Value;
  with Sender as TIWTreeView do
  begin
    if RightManagementToolRight = False then
      Items.Items[1].Destroy; // 2. Right Management Tool
    if OperationToolRight = False then
      Items.Items[3].Destroy; // 3. Operation Tool
    if ConfigurationToolRight = False then
      Items.Items[6].Destroy; // 4. Configuration Tool
  end;
end;
Leider ist es aber so, dass sobald beispielsweise das Item 1 zerstört wird, irgend ein anderes Item die 1 zugewiesen bekommt, was es unmöglich macht, gezielt Items zu entfernen.

Nun schwebt vor nach dem Namen des jeweiligen Items zu suchen und dieses dann zu zerstören. Ist für meine Begriffe aber alles minder schön gelöst.

Ideen die zur Lösung dieser Angelegenheit sind also gerne Willkommen.

Grüsse
hirnstroem
inde deus abest
  Mit Zitat antworten Zitat