ワークシートでハイパーリンクを管理する
ハイパーリンクの操作
ハイパーリンクの種類
一般的に、Aspose.Cells.GridWebでサポートされているハイパーリンクの種類は次のとおりです:
- URLハイパーリンク、Web URLにリンクできるハイパーリンク。
- テキストハイパーリンク、テキストに適用されたURLハイパーリンク。
- 画像ハイパーリンク、画像に適用されたURLハイパーリンク。
- セルコマンドハイパーリンク、サーバーにデータを送信するハイパーリンク。 このようなハイパーリンクは、クリックしたときにサーバーサイドイベントをトリガーするボタンのような役割を果たします。
以下のセクションでは、すべての種類のハイパーリンクの使用方法について詳しく説明します。また、リンクにアクセスしたり削除したりする方法についても説明します。
ハイパーリンクの追加
URLハイパーリンク
URLハイパーリンクは、通常ウェブサイトで見ることができるシンプルなハイパーリンクのように見えます。URLハイパーリンクはセル内のアンカーのように機能します。クリックすると、ウェブページに移動したり、新しいブラウザウィンドウが開かれます。
異なる種類のURLハイパーリンクがあります:
- テキストハイパーリンク。
- 画像ハイパーリンク。
開発者は、ハイパーリンクのための画像を指定できます。画像が指定されていない場合、テキストハイパーリンクが作成されます。それ以外の場合は、画像ハイパーリンクが作成されます。
テキストハイパーリンク
ワークシートにテキストハイパーリンクを追加するには:
- Aspose.Cells.GridWebコントロールをWebフォームに追加します。
- ワークシートにアクセスします。
- ワークシートのセルにハイパーリンクを追加します。
- セルに表示されるテキストを設定します。
- ハイパーリンクのURLを設定します。
- 必要に応じて、ハイパーリンクのターゲットを設定します。
- 必要に応じてツールヒントを設定します。
以下の例は、ワークシートに2つのハイパーリンクを追加します。一つはターゲットが指定されていない状態で、もう一つは_parentに設定されています。
出力: ワークシートにテキストハイパーリンクが追加されました
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Accessing the reference of the worksheet that is currently active | |
GridWorksheet sheet = GridWeb1.WorkSheets[GridWeb1.ActiveSheetIndex]; | |
// Adds a text hyperlink that goes to Aspose site and opens in new window | |
int linkIndex = sheet.Hyperlinks.Add("B1", "http://www.aspose.com"); | |
GridHyperlink link1 = sheet.Hyperlinks[linkIndex]; | |
link1.Target = "_blank"; | |
// Setting text and tool tip of the hyperlink | |
link1.TextToDisplay = "Aspose"; | |
link1.ScreenTip = "Open Aspose Web Site in new window"; | |
// Adding hyperlink to the worksheet to open in parent window | |
linkIndex = sheet.Hyperlinks.Add("B2", "http://www.aspose.com/docs/display/cellsnet/Aspose.Cells.GridWeb"); | |
GridHyperlink link2 = sheet.Hyperlinks[linkIndex]; | |
link2.Target = "_parent"; | |
// Setting text and tool tip of the hyperlink | |
link2.TextToDisplay = "Aspose.Grid Docs"; | |
link2.ScreenTip = "Open Aspose.Grid Docs in parent window"; |
画像ハイパーリンク
画像ハイパーリンクを追加するには:
- Aspose.Cells.GridWebコントロールをWebフォームに追加します。
- ワークシートにアクセスします。
- セルにハイパーリンクを追加します。
- ハイパーリンクとして表示される画像のURLを設定します。
- ハイパーリンクのURLを設定します。
- 必要に応じてツールヒントを設定します。
- 必要に応じて、ハイパーリンクのテキストを設定します。
出力: ワークシートに画像ハイパーリンクが追加されました
Setting the image hyperlink’s AltText fills a similar function as setting an
画像のURLに対応する画像は見つかりませんでした
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Accessing the reference of the worksheet that is currently active | |
GridWorksheet sheet = GridWeb1.WorkSheets[GridWeb1.ActiveSheetIndex]; | |
// Adding hyperlink to the worksheet | |
int linkIndex = sheet.Hyperlinks.Add("B5", "http://www.aspose.com"); | |
GridHyperlink link1 = sheet.Hyperlinks[linkIndex]; | |
link1.Target = "_blank"; | |
// Setting Image URL and tool tip of hyperlink | |
link1.ImageURL = "../Images/Aspose.Banner.gif"; | |
link1.ScreenTip = "Open Aspose Web Site in new window"; | |
// Adding hyperlink to the worksheet | |
linkIndex = sheet.Hyperlinks.Add("B6", "http://www.aspose.com/docs/display/cellsnet/Aspose.Cells.GridWeb"); | |
GridHyperlink link2 = sheet.Hyperlinks[linkIndex]; | |
link2.Target = "_blank"; | |
// Setting URL, tool tip and alt text of hyperlink | |
link2.ImageURL = "../Images/Aspose.Grid.gif"; | |
link2.ScreenTip = "Open Aspose.Grid Docs in new window"; | |
link2.AltText = "Open Aspose.Grid Docs in new window"; | |
// Resize the rows to display image nicely | |
sheet.Cells.SetRowHeight(4, 40); | |
sheet.Cells.SetRowHeight(5, 40); |
セルコマンドハイパーリンク
セルコマンドハイパーリンクは、ウェブページを開く代わりにサーバーサイドのイベントをトリガーする特別なハイパーリンクの種類です。開発者は、サーバーサイドイベントにコードを追加し、ハイパーリンクがクリックされたときに任意のタスクを実行できます。この機能により、開発者はよりインタラクティブなアプリケーションを作成することができます。
セルコマンドハイパーリンクを追加する:
- Aspose.Cells.GridWebコントロールをWebフォームに追加します。
- ワークシートにアクセスします。
- セルにハイパーリンクを追加します。
- ハイパーリンクのコマンドを任意の値に設定します。 その値は、ハイパーリンクのイベントハンドラーがそれを認識するために使用されます。
- 必要に応じてツールヒントを設定します。
- ハイパーリンクとして表示される画像のURLを設定します。
ワークシートにセルコマンドハイパーリンクが追加されました
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Accessing the reference of the worksheet that is currently active | |
GridWorksheet sheet = GridWeb1.WorkSheets[GridWeb1.ActiveSheetIndex]; | |
// Adding hyperlink to the worksheet | |
int linkIndex = sheet.Hyperlinks.Add("B8", ""); | |
GridHyperlink link1 = sheet.Hyperlinks[linkIndex]; | |
// Setting the cell command, tool tip and image URL for the hyperlink | |
link1.Command = "Click"; | |
link1.ScreenTip = "Click Here"; | |
link1.ImageURL = "../Images/button.jpg"; | |
// Resize the row to display image nicely | |
sheet.Cells.SetRowHeight(7, 30); |
セルコマンドハイパーリンクのイベントハンドリング
特定のセルコマンドハイパーリンクがクリックされたときに特定のタスクを実行するために、開発者はGridWebコントロールのCellCommandイベントのイベントハンドラーを作成する必要があります。CellCommandイベントのイベントハンドラーは、Argumentプロパティを提供するCellEventArgs型のオブジェクトを提供します。Argumentプロパティを使用して、CellCommandの値を比較して特定のハイパーリンクを識別します。
以下の例では、上記のコードで作成されたセルコマンドハイパーリンクに対するイベントハンドラーを作成します。 ハイパーリンクのCellCommandがClickに設定されていたので、イベントハンドラーではまずそれを確認し、その後、A6セルにメッセージを表示するコードを追加します。
ハイパーリンクがクリックされたときにイベントハンドラーが呼び出されます。
出力: ハイパーリンクがクリックされたときにA6セルにテキストが追加されます
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Event Handler for CellCommand event | |
protected void GridWeb1_CellCommand(object sender, Aspose.Cells.GridWeb.CellEventArgs e) | |
{ | |
// Checking the CellCommand of the hyperlink | |
if (e.Argument.Equals("Click")) | |
{ | |
// Accessing the reference of the worksheet that is currently active | |
GridWorksheet sheet = GridWeb1.WorkSheets[GridWeb1.ActiveSheetIndex]; | |
// Adding value to "C8" cell | |
sheet.Cells["C8"].PutValue("Cell Command Hyperlink Clicked"); | |
// Resize the column to display message nicely | |
sheet.Cells.SetColumnWidth(2, 250); | |
} | |
} |
ハイパーリンクのアクセス
既存のハイパーリンクにアクセスするには:
- それを含むセルにアクセスします。
- セルの参照を取得します。
- ハイパーリンクのプロパティを変更します。
- ハイパーリンクコレクションのGetHyperlinkメソッドに参照を渡してハイパーリンクにアクセスします。
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Accessing the reference of the worksheet that is currently active | |
GridWorksheet sheet = GridWeb1.WorkSheets[GridWeb1.ActiveSheetIndex]; | |
// Accessing a specific cell that contains hyperlink | |
GridCell cell = sheet.Cells["B1"]; | |
// Accessing the hyperlink from the specific cell | |
GridHyperlink link = sheet.Hyperlinks.GetHyperlink(cell); | |
if (link != null) | |
{ | |
// Modifying the text and URL of hyperlink | |
link.TextToDisplay = "Aspose.Blogs"; | |
link.Address = "http://www.aspose.com/Community/Blogs"; | |
} |
ハイパーリンクの削除
ハイパーリンクを削除するには:
- アクティブなワークシートにアクセスします。
- HyperlinksコレクションのRemoveメソッドを使用してハイパーリンクを削除します。
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Accessing the reference of the worksheet that is currently active | |
GridWorksheet sheet = GridWeb1.WorkSheets[GridWeb1.ActiveSheetIndex]; | |
// Removing hyperlink from the specific cell | |
sheet.Hyperlinks.Remove(new Data.GridCellArea() {StartRow = 0, EndRow = 0, StartColumn = 1, EndColumn = 1}); | |