ワークシートでハイパーリンクを管理する
ハイパーリンクの操作
ハイパーリンクの種類
通常、Aspose.Cells.GridWeb では次のハイパーリンクがサポートされています。
- URL ハイパーリンク、Web URL にリンクできるハイパーリンク。
- テキストハイパーリンク、テキストに適用された URL ハイパーリンク。
- 画像のハイパーリンク、画像に適用された URL ハイパーリンク。
- Cell コマンドのハイパーリンク、サーバーにデータを送信するハイパーリンク。このようなハイパーリンクは、クリックするとサーバー側のイベントをトリガーするボタンのように機能します。
以下のセクションでは、すべての種類のハイパーリンクの使用について詳しく説明します。また、リンクへのアクセスまたはリンクの削除方法についても説明します。
ハイパーリンクの追加
URL ハイパーリンク
URL ハイパーリンクは、Web サイトで通常見られる単純なハイパーリンクに似ています。 URL ハイパーリンクは、セル内のアンカーのように機能します。クリックするたびに、Web ページに移動するか、新しいブラウザー ウィンドウが開きます。
URL ハイパーリンクにはさまざまな種類があります。
- テキスト ハイパーリンク。
- 画像のハイパーリンク。
開発者は、ハイパーリンクのイメージを指定できます。画像が指定されていない場合は、テキスト ハイパーリンクが作成されます。それ以外の場合は、画像のハイパーリンクが作成されます。
テキスト ハイパーリンク
ワークシートにテキスト ハイパーリンクを追加するには:
- Aspose.Cells.GridWeb コントロールを Web フォームに追加します。
- ワークシートにアクセスします。
- ワークシートのセルにハイパーリンクを追加します。
- セルに表示されるテキストを設定します。
- ハイパーリンクの URL を設定します。
- 必要に応じて、ハイパーリンクのターゲットを設定します。
- 必要に応じて、ツール ヒントを設定します。
次の例では、ワークシートに 2 つのハイパーリンクを追加します。 1 つはターゲットがなく、もう 1 つは _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 を設定します。
- 必要に応じて、ツール ヒントを設定します。
- 必要に応じて、ハイパーリンク テキストを設定します。
出力: ワークシートに追加された画像のハイパーリンク
画像ハイパーリンクの AltText を設定すると、
画像 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); |
Cell コマンド ハイパーリンク
セル コマンド ハイパーリンクは、Web ページを開く代わりにサーバー側のイベントをトリガーする特殊なタイプのハイパーリンクです。開発者は、サーバー側のイベントにコードを追加し、ハイパーリンクがクリックされたときに任意のタスクを実行できます。この機能により、開発者はよりインタラクティブなアプリケーションを作成できます。
セル コマンドのハイパーリンクを追加するには:
- Aspose.Cells.GridWeb コントロールを Web フォームに追加します。
- ワークシートにアクセスします。
- セルにハイパーリンクを追加します。
- ハイパーリンクの Command を任意の値に設定します。 この値は、ハイパーリンクのイベント ハンドラーがそれを認識するために使用されます。
- 必要に応じて、ツール ヒントを設定します。
- ハイパーリンクとして表示される画像の 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); |
Cell コマンド ハイパーリンクのイベント処理
開発者は、特定のセル コマンド ハイパーリンクがクリックされたときに特定のタスクを実行するために、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); | |
} | |
} |
ハイパーリンクへのアクセス
既存のハイパーリンクにアクセスするには:
- それを含むセルにアクセスします。
- セル参照を取得します。
- Hyperlinks コレクションの 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}); | |